установка Mayavi с модулем pip-no с именем vtk
Я хочу использовать Mayavi.
ситуация
- я использую MacBook Air с OSX 10.7.3.
- я использую Python 2.7.2
- я
virtualenv
установлен. Но я не использовал его для этой установки.
я вручную установил все зависимости, включая VTK
.
на VTK
, я следовал его руководству по установке и установил оболочку python.
теперь, если я открою новый окно терминала и открыть python, я могу импортировать vtk
без каких-либо ошибок.
Я пытаюсь установить Mayavi со следующей командой:
pip install mayavi
но возникает следующая ошибка:
Downloading/unpacking mayavi
Running setup.py egg_info for package mayavi
build_src
building extension "tvtk.array_ext" sources
building data_files sources
build_src: building npy-pkg config files
no previously-included directories found matching 'artwork'
no previously-included directories found matching 'docs/pdf'
Requirement already satisfied (use --upgrade to upgrade): apptools in /Library/Python/2.7/site-packages (from mayavi)
Requirement already satisfied (use --upgrade to upgrade): traits in /Library/Python/2.7/site-packages (from mayavi)
Requirement already satisfied (use --upgrade to upgrade): traitsui in /Library/Python/2.7/site-packages (from mayavi)
Requirement already satisfied (use --upgrade to upgrade): configobj in /Library/Python/2.7/site-packages (from apptools->mayavi)
Requirement already satisfied (use --upgrade to upgrade): pyface in /Library/Python/2.7/site-packages (from traitsui->mayavi)
Installing collected packages: mayavi
Running setup.py install for mayavi
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/Yasser/build/mayavi/setup.py", line 498, in <module>
**config
File "/Library/Python/2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.7-intel.egg/numpy/distutils/core.py", line 186, in setup
return old_setup(**new_attr)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
dist.run_commands()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Library/Python/2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.7-intel.egg/numpy/distutils/command/install.py", line 57, in run
r = self.setuptools_run()
File "/Library/Python/2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.7-intel.egg/numpy/distutils/command/install.py", line 31, in setuptools_run
return old_install_mod._install.run(self)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/install.py", line 573, in run
self.run_command('build')
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Users/Yasser/build/mayavi/setup.py", line 303, in run
build_tvtk_classes_zip()
File "/Users/Yasser/build/mayavi/setup.py", line 290, in build_tvtk_classes_zip
gen_tvtk_classes_zip()
File "tvtk/setup.py", line 46, in gen_tvtk_classes_zip
from code_gen import TVTKGenerator
File "tvtk/code_gen.py", line 10, in <module>
import vtk
ImportError: No module named vtk
Complete output from command /usr/bin/python -c "import setuptools;__file__='/Users/Yasser/build/mayavi/setup.py';exec(compile(open(__file__).read().replace('rn', 'n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/53/_trhc_0x0fb6kvx6bw_wrk500000gn/T/pip-Z4hpsW-record/install-record.txt:
running install
running build
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/Yasser/build/mayavi/setup.py", line 498, in <module>
**config
File "/Library/Python/2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.7-intel.egg/numpy/distutils/core.py", line 186, in setup
return old_setup(**new_attr)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
dist.run_commands()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Library/Python/2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.7-intel.egg/numpy/distutils/command/install.py", line 57, in run
r = self.setuptools_run()
File "/Library/Python/2.7/site-packages/numpy-1.6.1-py2.7-macosx-10.7-intel.egg/numpy/distutils/command/install.py", line 31, in setuptools_run
return old_install_mod._install.run(self)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/install.py", line 573, in run
self.run_command('build')
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/Users/Yasser/build/mayavi/setup.py", line 303, in run
build_tvtk_classes_zip()
File "/Users/Yasser/build/mayavi/setup.py", line 290, in build_tvtk_classes_zip
gen_tvtk_classes_zip()
File "tvtk/setup.py", line 46, in gen_tvtk_classes_zip
from code_gen import TVTKGenerator
File "tvtk/code_gen.py", line 10, in <module>
import vtk
ImportError: No module named vtk
----------------------------------------
Command /usr/bin/python -c "import setuptools;__file__='/Users/Yasser/build/mayavi/setup.py';exec(compile(open(__file__).read().replace('rn', 'n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/53/_trhc_0x0fb6kvx6bw_wrk500000gn/T/pip-Z4hpsW-record/install-record.txt failed with error code 1 in /Users/Yasser/build/mayavi
Storing complete log in /Users/Yasser/Library/Logs/pip.log
Traceback (most recent call last):
File "/usr/local/bin/pip", line 8, in <module>
load_entry_point('pip==1.1', 'console_scripts', 'pip')()
File "/Library/Python/2.7/site-packages/pip-1.1-py2.7.egg/pip/__init__.py", line 116, in main
return command.main(args[1:], options)
File "/Library/Python/2.7/site-packages/pip-1.1-py2.7.egg/pip/basecommand.py", line 141, in main
log_fp = open_logfile(log_fn, 'w')
File "/Library/Python/2.7/site-packages/pip-1.1-py2.7.egg/pip/basecommand.py", line 168, in open_logfile
log_fp = open(filename, mode)
IOError: [Errno 13] Permission denied: '/Users/Yasser/Library/Logs/pip.log'
Я думаю, что проблема с vtk
.
может кто-нибудь помочь мне?
Другие Подробности
под управлением sudo pip install mayavi
не решает проблему.
Я думал, что это может помогите!--11-->
› which python
/usr/local/bin/python
› python
Python 2.7.2 (default, Feb 17 2012, 13:57:55)
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import vtk
>>> vtk
<module 'vtk' from '/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/VTK-5.10.0-py2.7.egg/vtk/__init__.pyc'>
>>>
мой PYTHONPATH
пусто.
6 ответов
код pip
вероятно, использует другой python
, вид у вас vtk
установить с помощью /usr/local/bin/python
, а pip
бинарные использует /usr/bin/python
.
проверить это:
$ head -n1 $(which pip)
чтобы получить его решение, вы можете использовать virtualenv
установка pip
используя /usr/local/bin/python
:
curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | /usr/local/bin/python
дополнительные инструкции по установке см. В разделе http://www.pip-installer.org/en/latest/installing.html
Я на Debian, но это должно работать и для вас
Я застрял с установкой vtk в virtualenv, после нескольких часов поиска без результатов я сделал следующее, И это сработало.
установить python-vtk из репозиториев по всей системе
папку ВТК скопировать из /usr/lib в/pymodules/вместо python2.7 в /путь/к/вашему/виртуальное окружение/Либ/вместо python2.7/сайт-пакеты
в вашем случае общесистемный python папка packages, вероятно, будет отличаться, но вы можете легко найти ее, запустив system python и введя следующее:
import vtk,sys
print(sys.modules['vtk'])
после этого трюка mayavi был успешно установлен в мой virtualenv с помощью pip install mayavi и pip install envisage.
Edit: вместо копирования может быть лучше просто символически связать папку на Шаге 2
У меня была та же проблема, и первый ответ не помог мне, потому что pip был в правильном каталоге, но оказалось, что у меня не было установленного vtk - запуск sudo apt-get install python-vtk исправил проблему, и я смог успешно запустить pip install mayavi после этого.
у меня была такая же проблема при установке mayavi с python, установленным в pyenv, и я решил эту проблему, скопировав каталог в /home/myname/.pyenv/versions/2.7.12/lib/python2.7/site-packages
ниже есть мой метод:
-
установить
vtk
иpython-vtk
sudo apt-get install vtk6 sudo apt-get install python-vtk
попробовать
python -c "import vtk"
, если снова не удалось, перейдите к шагу 3-
ошибка импорта может быть вызвана потерей папки пакета vtk в текущем python, поэтому мы должны найти папку vtk и скопировать в ваш текущий python (наиболее возможный python в каталоге pyenv shims).
путь к папке vtk в моем ubuntu -
/usr/lib/python2.7/dist-packages/vtk
просто скопировать
vtk
папка для вашего текущего python в/site-packages
, например,cp -r /usr/lib/python2.7/dist-packages/vtk /home/myname/pyenv/versions/2.7.12/lib/python2.7/site-packages
попробовать
python -c "import vtk"
снова.-
если нет ошибки импорта, просто сделайте
pip install mayavi
Я настоял на sudo
установить несколько раз, наконец, решил, не знаю, как объяснить.
sudo python2 -m pip install mayavi
sudo python3 -m pip install mayavi