OpenSSL version restriction outdated
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 38/100
- Issue 類型
- 缺陷
- 描述清晰度
- 基本清楚
- 活躍度
- 停滯
- 領域
- build-system
研究方向
使用 Python 3.12.10、Julia 1.11.5、juliacall 和 Yao 範例重現此失敗,然後檢查 traceback 中顯示的 OpenSSL_jll wrapper 與 artifact 載入路徑。當所回報的 Linux 環境能夠載入 OpenSSL 相依性,且不再出現缺少 OPENSSL_3.3.0 的錯誤時,即表示完成。
由索引模型根據 Issue 內容生成。
描述
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, 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 "<stdin>", line 1, in <module> 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_jllTo reproduce:
- Create a new python venv using
python3.12 -m venv .venvpip install juliacall(by default this installs Julia 1.11.5)- 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
- 主要語言
- Julia
- 星號
- 1.1k
- 分支
- 89
- 平均合併
- 2 天 15 小時
- 30 天內合併 PR
- 7
環境準備
這個專案沒有提供開發容器、Dockerfile 或貢獻指南,環境需要你自己搭建:先看它的 README,通用步驟見我們的新手貢獻指南。
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
JuliaPy/PythonCall.jl 的其他 Issue
-
難度 3/5 1-2 天 新手友好度 55/100
JuliaPy/PythonCall.jl#828 · 7 則留言 ·
維護者通常 1 天內回覆
-
bug
難度 4/5 3-5 天 新手友好度 48/100
JuliaPy/PythonCall.jl#809 · 2 則留言 ·
維護者通常 1 天內回覆
-
enhancement
難度 5/5 一週以上 新手友好度 35/100
JuliaPy/PythonCall.jl#805 · 4 則留言 ·
維護者通常 1 天內回覆
-
enhancement
難度 3/5 1-2 天 新手友好度 68/100
JuliaPy/PythonCall.jl#796 ·
維護者通常 1 天內回覆
-
enhancement
難度 5/5 一週以上 新手友好度 25/100
JuliaPy/PythonCall.jl#790 ·
維護者通常 1 天內回覆
查看 JuliaPy/PythonCall.jl 的全部 Issue
相似的 Issue
-
難度 1/5 1-3 小時 新手友好度 84/100
SciML/Catalyst.jl#1571 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 72/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 62/100
-
難度 2/5 1-3 小時 新手友好度 70/100
SciML/Optimization.jl#1414 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 68/100
SciML/OrdinaryDiffEq.jl#4831 ·
維護者通常 1 天內回覆