2016-08-03 162 views
1

这个问题是关系到已经问过的问题: Julia error using PyPlot - signal (11): Segmentation fault朱莉娅PyPlot段

然而,它并不完全清楚,我什么解决办法有,甚至有步骤是否也适用于我的情况(我试过它们没有效果)。

我一直在使用Julia 4.6一段时间没有任何问题。 然后我决定将我的Ubuntu发行版从14更新到16.04。这是当PyPlot停止工作时。 我已经更新了Julia包,并且我也做了Pkg.build(“PyPlot”),没有任何效果。我也运行Pkg.test(“PyCall”),它成功地通过了所有的测试。我也试过这个建议

ENV["PYTHON"] = ""; Pkg.build("PyPlot") 

现在的情况如下。 我可以正常导入PyPLot:

using PyPlot 

这让我没有错误。 但是,只要我调用任何命令与PyPlot,如:

figure() 

我收到的错误:

signal (11): Segmentation fault 
unknown function (ip: 0x32736) 
Segmentation fault (core dumped) 

和Julia退出课程。

我不知道这是否相关,但出于好奇,我尝试了以下事情。在命令行启动蟒蛇后,我做的:

import matplotlib.pyplot 

使我有以下错误信息:

RuntimeError: module compiled against API version 0xa but this version of numpy is 0x9 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/lib/python2.7/dist-packages/matplotlib/pyplot.py", line 29, in <module> 
    import matplotlib.colorbar 
    File "/usr/lib/python2.7/dist-packages/matplotlib/colorbar.py", line 34, in <module> 
    import matplotlib.collections as collections 
    File "/usr/lib/python2.7/dist-packages/matplotlib/collections.py", line 27, in <module> 
    import matplotlib.backend_bases as backend_bases 
    File "/usr/lib/python2.7/dist-packages/matplotlib/backend_bases.py", line 62, in <module> 
    import matplotlib.textpath as textpath 
    File "/usr/lib/python2.7/dist-packages/matplotlib/textpath.py", line 15, in <module> 
    import matplotlib.font_manager as font_manager 
    File "/usr/lib/python2.7/dist-packages/matplotlib/font_manager.py", line 58, in <module> 
    from matplotlib import ft2font 
ImportError: numpy.core.multiarray failed to import 

所有帮助表示赞赏。

编辑:

我通过简单的卸载,并通过PIP重新安装matplotlib固定与import语句蟒蛇的问题。然而,这对Julia没有任何改变。

+1

也许你只需要删除Pyplot.ji /缓存文件并重新编译? –

+1

您可能会遇到以下情况:https://github.com/stevengj/PyPlot.jl/issues/234#issuecomment-237031105。 –

回答

1

最后我在一位同事的帮助下设法解决了这个问题。

我首先通过pip重新安装了matplotlib。

我不得不指出朱莉娅到系统安装了Python:

ENV["PYTHON"]="/usr/bin/python" 

我然后重建PyCall和PyPlot:

Pkg.build("PyCall") 
Pkg.build("PyPlot") 

重启动朱莉娅和它的工作!