Ни один модуль с именем 'dolfin' не использует Spyder
Я не могу, ради моей жизни, получить 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 *
: работал после некоторых настроек.
Что я сделал до сих пор
Я установил anaconda
используя предложенную загрузку от conda.
Бег 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
с 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'
, Может быть spyder
также недоступен в среде феников? conda list
... Нет, не там. Теперь начинается самое интересное... :(
, conda install spyder
а также which spyder
доходность
/home/hannes/anaconda3/envs/fenics/bin/spyder
Тем не менее, работает spyder
выдает ошибку
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)
Кажется, это некоторые проблемы с opengl. Решение проблемы с github 6968, conda install pyopengl
, не помогло :(
; все тот же libGL
ошибки. Следовательно, conda uninstall spyder
, spyder
по крайней мере вернул мне спайдера.
Моя лучшая подсказка до сих пор
Я попытался добавить модуль в PYTHONPATH, добавив
export PYTHONPATH="$PYTHONPATH:/home/hannes/anaconda3/envs/fenics/lib/python3.6/site-packages/"
в .bashrc
и запуск Spyder, который не находится внутри среды fenics. Безуспешно, хотя я не уверен, правильно ли я сделал этот шаг. Зачем, 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
import sys
sys.path.append('/home/hannes/anaconda3/envs/fenics/lib/python3.6/site-packages')
Поскольку это только временное решение (я должен добавлять его каждый раз, когда запускаю Spyder), я заинтересован в постоянном исправлении.
Буду признателен за любую помощь:).
Ханнес
1 ответ
(Сопровождающий 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 *
Это должно работать сейчас.