JuliaPy / JuliaPy/PyCall.jl

segfault when testing PyCall, error initializing PyPlot, julia release 3.10 Ubuntu binaries, 3.11 compiled from source on Ubuntu

オープン
#170 コメント 9 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Julia
スター
1.5k
フォーク
186
PR マージ指標
30日以内にマージされた PR はありません

説明

I'm getting a segfault when calling Pkg.test("PyCall"). 'using PyCall' then gives no error, but 'using PyPlot' doesn't work. The output of the two problematic functions and versioninfo is below. This happened both on the Ubuntu binaries (julia release 3.10) and after compiling from source on Ubuntu (julia release 3.11). The output below is from the Ubuntu binaries. The output from the version compiled from source is similar.

Many thanks for your help!

Julia Version 0.3.10
Commit c8ceeef (2015-06-24 13:54 UTC)
Platform Info:
System: Linux (x86_64-linux-gnu)
CPU: Intel(R) Xeon(R) CPU E5420 @ 2.50GHz
WORD_SIZE: 64
BLAS: libopenblas (NO_LAPACK NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY Penryn)
LAPACK: liblapack.so.3
LIBM: libopenlibm
LLVM: libLLVM-3.3

julia> using PyPlot
Warning: error initializing module PyPlot:
PyCall.PyError(msg=":PyImport_ImportModule", T=PyCall.PyObject(o=0x00000000339078a0), val=PyCall.PyObject(o=0x00000000351631b8), traceback=PyCall.PyObject(o=0x0000000000000000))

julia> Pkg.test("PyCall")
INFO: Testing PyCall

signal (11): Segmentation fault
PyObject_IsInstance at /usr/lib/x86_64-linux-gnu/libpython2.7.so (unknown line)
pyisinstance at /home/tony/.julia/v0.3/PyCall/src/PyCall.jl:81
jlcall_pyisinstance_20478 at (unknown line)
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
pyptr_query at /home/tony/.julia/v0.3/PyCall/src/conversions.jl:152
pytype_query at /home/tony/.julia/v0.3/PyCall/src/conversions.jl:794
convert at /home/tony/.julia/v0.3/PyCall/src/conversions.jl:844
roundtripeq at /home/tony/.julia/v0.3/PyCall/test/runtests.jl:6
jlcall_roundtripeq_20810 at (unknown line)
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
anonymous at test.jl:62
do_test at test.jl:37
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
unknown function (ip: 1196219800)
unknown function (ip: 1196215936)
unknown function (ip: 1196283418)
unknown function (ip: 1196286125)
jl_load at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
include at ./boot.jl:245
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
include_from_node1 at loading.jl:128
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
process_options at ./client.jl:285
_start at ./client.jl:354
jlcall__start_17415 at /usr/bin/../lib/x86_64-linux-gnu/julia/sys.so (unknown line)
jl_apply_generic at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
unknown function (ip: 4200623)
julia_trampoline at /usr/bin/../lib/x86_64-linux-gnu/julia/libjulia.so (unknown line)
unknown function (ip: 4199613)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 4199667)
unknown function (ip: 0)
================================================================================================================================[ ERROR: PyCall ]=================================================================================================================================

failed process: Process(/usr/bin/julia /home/tony/.julia/v0.3/PyCall/test/runtests.jl, ProcessSignaled(11)) [0]

INFO: No packages to install, update or remove
ERROR: PyCall had test errors
in error at error.jl:21
in test at pkg/entry.jl:718
in anonymous at pkg/dir.jl:28
in cd at ./file.jl:20
in cd at pkg/dir.jl:28
in test at pkg.jl:67

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start by reproducing Pkg.test("PyCall") and using PyPlot, then inspect PyCall/src/PyCall.jl, PyCall/src/conversions.jl, and PyCall/test/runtests.jl at the stack-trace locations. Done means the PyCall tests complete without a segmentation fault and PyPlot initializes successfully on the reported Ubuntu setups.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
julia, python
領域
backend, testing-qa
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。