在我的一生中,我无法dolfin
与Spyder
一起运行。那是我最初的想法。我设法使其以某种方式运行,但不是以一种方便的方式运行。情况如下:
错误
conda activate fenics
,spyder
,from dolfin import *
: No module named 'dolfin'
。
有效的方法
conda activate fenics
,python
,from dolfin import *
:首先工作。conda activate fenics
,ipython
,from dolfin import *
:经过一些调整后可以正常工作。conda activate fenics
,spyder
,from dolfin import *
:经过一些调整后可以正常工作。我到目前为止所做的事情
我使用建议的从conda下载的文件安装了anaconda
。
运行conda create -n fenics -c conda-forge fenics
,conda install fenics
和conda activate fenics
以安装和激活fenics环境。
然后开始python
并执行from dolfin import *
即可。 :)
在ipython
中运行相同的命令不起作用。使用conda list
我发现了
...
hdf5
hypre
icu
isl
jedi
...
列表中没有ipython
,并且which
的{{1}}和python
产生了
ipthon
因此 /home/hannes/anaconda3/envs/fenics/bin/python
/home/hannes/anaconda3/bin/python
,conda install ipython
和ipython
也可以工作! from dolfin import *
运行:)
和spyder
会引发与from dolfin import *
之前相同的错误:ipython
。也许No module named 'dolfin'
在fenics的环境中也不可用? spyder
...不,不在那里。现在开始有趣的部分... conda list
。 :(
和conda install spyder
产生
which spyder
但是,运行 /home/hannes/anaconda3/envs/fenics/bin/spyder
会引发错误
spyder
这似乎是一些opengl问题。 github issue 6968, libGL error: unable to load driver: r600_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: r600
libGL error: unable to load driver: r600_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: r600
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
Segmentation fault (core dumped)
的解决方案对conda install pyopengl
没有帮助;仍然相同的:(
错误。因此,libGL
,conda uninstall spyder
至少给了我间谍。
到目前为止我最好的线索
我尝试通过添加将模块添加到PYTHONPATH
spyder
到 export PYTHONPATH="$PYTHONPATH:/home/hannes/anaconda3/envs/fenics/lib/python3.6/site-packages/"
并运行不在fenics环境内的Spyder。没有成功,尽管我不确定是否正确执行了此步骤。为什么.bashrc
,conda activate fenics
和spyder
吐出来:
sys.path
由于此操作无效,因此我在运行 /home/hannes/anaconda3/lib/python3.6/site-packages/spyder
/home/hannes/anaconda3/lib/python36.zip
/home/hannes/anaconda3/lib/python3.6
/home/hannes/anaconda3/lib/python3.6/lib-dynload
/home/hannes/.local/lib/python3.6/site-packages
/home/hannes/anaconda3/lib/python3.6/site-packages
/home/hannes/anaconda3/lib/python3.6/site-packages/IPython/extensions
/home/hannes/.ipython
,from dolfin import *
后使conda activate fenics
工作
ipython
由于这只是暂时的解决方法(每次启动Spyder时都必须添加它),因此我对永久性修复感兴趣。
我将不胜感激:)。
Hannes
答案 0 :(得分:2)
(此处为 Spyder维护者)由于Spyder 3.3.1 (将在几天后发布),解决方案如下:
激活您的环境
使用以下命令在此处安装spyder-kernels
软件包:
conda install spyder-kernels=0.*
也在此运行(在系统终端中)
python -c "import sys; print(sys.executable)"
并复制该命令返回的路径。
停用您的环境,然后从根目录或基础目录启动Spyder。
转到
Tools > Preferences > Python Interpreter > Use the following interpreter
并在其中粘贴您在第3步中获得的路径。
启动新的IPython控制台并运行
from dolfin import *
现在应该可以使用。