JuliaPy / JuliaPy/PythonCall.jl

OpenSSL version restriction outdated

Abierto
#612 3 comentarios 0 reacciones 0 asignados Ver en GitHub
bug
Lenguaje dominante
Julia
Estrellas
1.1k
Forks
86
Merge medio
1 d 22 h
PR fusionados (30 d)
3

Descripción

Just raising this as a new issue, as the previous thread was a question, so I'm aware that my response might not be seen.

> I believe [Julia now uses a more up to date version of OpenSSL](https://github.com/JuliaLang/julia/pull/58247), which is now causing problems when installing certain packages with JuliaCall/PythonCall.
>
> In short, the following error is commonly encountered (on Linux at least)
>
> ```
> Traceback (most recent call last):
> File "", line 1, in
> File "/home/wilf/.julia/packages/PythonCall/WMWY0/src/JlWrap/module.jl", line 27, in seval
> return self._jl_callmethod($(pyjl_methodnum(pyjlmodule_seval)), expr)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> juliacall.JuliaError: InitError: could not load library "/home/wilf/.julia/artifacts/a696e1e3e6b8d3c2c4b67609357ebc5c35eabde1/lib/libssl.so"
> /lib/x86_64-linux-gnu/libcrypto.so.3: version `OPENSSL_3.3.0' not found (required by /home/wilf/.julia/artifacts/a696e1e3e6b8d3c2c4b67609357ebc5c35eabde1/lib/libssl.so)
> Stacktrace:
> [1] dlopen(s::String, flags::UInt32; throw_error::Bool)
> @ Base.Libc.Libdl ./libdl.jl:117
> [2] dlopen(s::String, flags::UInt32)
> @ Base.Libc.Libdl ./libdl.jl:116
> [3] macro expansion
> @ ~/.julia/packages/JLLWrappers/GfYNv/src/products/library_generators.jl:63 [inlined]
> [4] __init__()
> @ OpenSSL_jll ~/.julia/packages/OpenSSL_jll/WaTt1/src/wrappers/x86_64-linux-gnu.jl:16
> [5] run_module_init(mod::Module, i::Int64)
> @ Base ./loading.jl:1134
> [6] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
> @ Base ./loading.jl:1122
> [7] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any})
> @ Base ./loading.jl:1067
> [8] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128)
> @ Base ./loading.jl:1581
> [9] _tryrequire_from_serialized(modkey::Base.PkgId, build_id::UInt128)
> @ Base ./loading.jl:1445
> [10] _tryrequire_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String)
> @ Base ./loading.jl:1524
> [11] _require(pkg::Base.PkgId, env::String)
> @ Base ./loading.jl:1990
> [12] __require_prelocked(uuidkey::Base.PkgId, env::String)
> @ Base ./loading.jl:1812
> [13] #invoke_in_world#3
> @ ./essentials.jl:926 [inlined]
> [14] invoke_in_world
> @ ./essentials.jl:923 [inlined]
> [15] _require_prelocked(uuidkey::Base.PkgId, env::String)
> @ Base ./loading.jl:1803
> [16] macro expansion
> @ ./loading.jl:1790 [inlined]
> [17] macro expansion
> @ ./lock.jl:267 [inlined]
> [18] __require(into::Module, mod::Symbol)
> @ Base ./loading.jl:1753
> [19] #invoke_in_world#3
> @ ./essentials.jl:926 [inlined]
> [20] invoke_in_world
> @ ./essentials.jl:923 [inlined]
> [21] require(into::Module, mod::Symbol)
> @ Base ./loading.jl:1746
> [22] eval
> @ ./boot.jl:385 [inlined]
> [23] eval
> @ ./Base.jl:88 [inlined]
> [24] pyjlmodule_seval(self::Module, expr::Py)
> @ PythonCall.JlWrap ~/.julia/packages/PythonCall/WMWY0/src/JlWrap/module.jl:13
> [25] _pyjl_callmethod(f::Any, self_::Ptr{PythonCall.C.PyObject}, args_::Ptr{PythonCall.C.PyObject}, nargs::Int64)
> @ PythonCall.JlWrap ~/.julia/packages/PythonCall/WMWY0/src/JlWrap/base.jl:67
> [26] _pyjl_callmethod(o::Ptr{PythonCall.C.PyObject}, args::Ptr{PythonCall.C.PyObject})
> @ PythonCall.JlWrap.Cjl ~/.julia/packages/PythonCall/WMWY0/src/JlWrap/C.jl:63
> during initialization of module OpenSSL_jll
> ```
>
> To reproduce:
> 1. Create a new python venv using `python3.12 -m venv .venv`
> 2. `pip install juliacall` (by default this installs Julia 1.11.5)
> 3. Start python and run
> ```
>>> from juliacall import Main as jl
>>> from juliapkg import add, resolve
>>> add("Yao", "5872b779-8223-5990-8dd0-5abbb0748c8c") # other packages with OpenSSL deps also cause the error
>>> resolve()
>>> jl.seval("using Yao")
> ```
>
> Info:
> Python: 3.12.10
> Julia: 1.11.5
> OS: Linux

_Originally posted by @wilf-phasecraft in [#587](https://github.com/JuliaPy/PythonCall.jl/issues/587#issuecomment-2838271630)_

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.