JuliaPy / JuliaPy/PythonPlot.jl

hb_ft_font_get_ft_face error from CondaPkg installation

Aberta
#55 3 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Julia
Estrelas
85
Forks
9
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

On a fresh install of julia and `PythonPlot` i get the following error when trying to load it:
```
CondaPkg Found dependencies: /home/anton/.julia/packages/CondaPkg/lKlVY/CondaPkg.toml
CondaPkg Found dependencies: /home/anton/.julia/packages/PythonCall/5WGSP/CondaPkg.toml
CondaPkg Found dependencies: /home/anton/.julia/packages/PythonPlot/oS8x4/CondaPkg.toml
CondaPkg Resolving changes
+ libstdcxx
+ libstdcxx-ng
+ matplotlib
+ openssl
+ python
CondaPkg Initialising pixi
│ /home/anton/.julia/artifacts/4ae17cee0bd922f66b2c72bf2f01c22481a5ec19/bin/pixi
│ init
│ --format pixi
└ /home/anton/.julia/environments/v1.12/.CondaPkg
✔ Created /home/anton/.julia/environments/v1.12/.CondaPkg/pixi.toml
CondaPkg Wrote /home/anton/.julia/environments/v1.12/.CondaPkg/pixi.toml
│ [dependencies]
│ openssl = ">=3, <3.6"
│ libstdcxx = ">=3.4,<15.0"
│ libstdcxx-ng = ">=3.4,<15.0"
│ matplotlib = ">=1"

│ [dependencies.python]
│ channel = "conda-forge"
│ build = "*cp*"
│ version = ">=3.10,!=3.14.0,!=3.14.1,<4"

│ [workspace]
│ name = ".CondaPkg"
│ platforms = ["linux-64"]
│ channels = ["conda-forge"]
│ channel-priority = "strict"
└ description = "automatically generated by CondaPkg.jl"
CondaPkg Installing packages
│ /home/anton/.julia/artifacts/4ae17cee0bd922f66b2c72bf2f01c22481a5ec19/bin/pixi
│ install
└ --manifest-path /home/anton/.julia/environments/v1.12/.CondaPkg/pixi.toml
✔ The default environment has been installed.
ERROR: LoadError: InitError: Python: ImportError: /home/anton/.julia/environments/v1.12/.CondaPkg/.pixi/envs/default/lib/python3.14/site-packages/matplotlib/../../../libraqm.so.0: undefined symbol: hb_ft_font_get_ft_face
Python stacktrace:
[1] _check_versions
@ ~/.julia/environments/v1.12/.CondaPkg/.pixi/envs/default/lib/python3.14/site-packages/matplotlib/__init__.py:250
[2]
@ ~/.julia/environments/v1.12/.CondaPkg/.pixi/envs/default/lib/python3.14/site-packages/matplotlib/__init__.py:265
during initialization of module PythonPlot
in expression starting at /home/anton/syscop/software/CCOptExperiments.jl/scripts/common.jl:10
Stacktrace:
[1] pythrow()
@ PythonCall.Core ~/.julia/packages/PythonCall/5WGSP/src/Core/err.jl:77
[2] errcheck
@ ~/.julia/packages/PythonCall/5WGSP/src/Core/err.jl:10 [inlined]
[3] pyimport
@ ~/.julia/packages/PythonCall/5WGSP/src/Core/builtins.jl:1474 [inlined]
[4] __init__()
@ PythonPlot ~/.julia/packages/PythonPlot/oS8x4/src/init.jl:150
[5] run_module_init(mod::Module, i::Int64)
@ Base ./loading.jl:1443
[6] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
@ Base ./loading.jl:1431
[7] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any}; register::Bool)
@ Base ./loading.jl:1319
[8] _include_from_serialized
@ ./loading.jl:1274 [inlined]
[9] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128, stalecheck::Bool; reasons::Dict{String, Int64}, DEPOT_PATH::Vector{String})
@ Base ./loading.jl:2115
[10] _require_search_from_serialized
@ ./loading.jl:2009 [inlined]
[11] __require_prelocked(pkg::Base.PkgId, env::String)
@ Base ./loading.jl:2627
[12] _require_prelocked(uuidkey::Base.PkgId, env::String)
@ Base ./loading.jl:2493
[13] macro expansion
@ ./loading.jl:2421 [inlined]
[14] macro expansion
@ ./lock.jl:376 [inlined]
[15] __require(into::Module, mod::Symbol)
@ Base ./loading.jl:2386
[16] require(into::Module, mod::Symbol)
@ Base ./loading.jl:2362
[17] eval(m::Module, e::Any)
@ Core ./boot.jl:489
[18] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
@ Base ./loading.jl:2870
[19] _include(mapexpr::Function, mod::Module, _path::String)
@ Base ./loading.jl:2930
[20] include(mapexpr::Function, mod::Module, _path::String)
@ Base ./Base.jl:307
[21] (::Base.IncludeInto)(fname::String)
@ Base ./Base.jl:308
[22] top-level scope
@ ~/syscop/software/CCOptExperiments.jl/scripts/macmpec/run_macmpec.jl:1
in expression starting at /home/anton/syscop/software/CCOptExperiments.jl/scripts/macmpec/run_macmpec.jl:1
```

The second time I try to use PythonPlot I get the following:
```
ERROR: LoadError: InitError: could not load library "/home/anton/.julia/artifacts/48d95e60ccfecd4622b42d4fbeda49b2cbc7530b/lib/libQt6DBus.so"
/home/anton/.julia/artifacts/48d95e60ccfecd4622b42d4fbeda49b2cbc7530b/lib/libQt6DBus.so: undefined symbol: _ZN14QObjectPrivateC2E16QtPrivate_6_10_2, version Qt_6_PRIVATE_API
during initialization of module Qt6Base_jll
```

Which seems to be something broken in the Yggdrasil build of the Qt6Base jll package.

I haven't a clue where to even start debugging this as I am _not_ a conda (pixi, etc) user and this seems like an issue with that side.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Start with PythonPlot's src/init.jl and reproduce the first load using the generated .CondaPkg/pixi.toml. Compare the matplotlib __init__.py failure with the later Qt6Base_jll library error, tracing the dependency versions and installation output shown in the report. Done means PythonPlot loads successfully after a fresh CondaPkg installation.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
matplotlib, python
Domínio
data-visualization
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Ativa
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
38/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.