2014-11-29 4 views
2

Я использую дистрибутив anaconda python и имею проблему с запуском скрипта. Я использую команду «sudo python setup.py install» в скрипте. Ниже в несколько строк скрипта установки (где ошибка, кажется, происходит):Ошибка установки скрипта python

try: 
    from nisext.sexts import package_check, get_comrec_build 
except ImportError: 
    raise RuntimeError('Need nisext package from nibabel installation' 
         ' - please install nibabel first') 

, когда я бегу «Судо питон setup.py установить», я получаю следующее сообщение об ошибке:

Traceback (most recent call last): 
    File "setup.py", line 23, in <module> 
    raise RuntimeError('Need nisext package from nibabel installation' 
RuntimeError: Need nisext package from nibabel installation - please install nibabel first 

Это не имеет никакого смысла для меня, так как у меня есть необходимый пакет в текущей среде. Когда я открываю python с помощью команды «python» и вручную набираю строку «из nisext.sexts import package_check, get_comrec_build», пакет импортируется отлично, а новая строка представлена ​​python (что указывает на то, что импорт был успешным). Кто-нибудь знает, почему это может произойти? Я не понимаю, почему эта ошибка возникает.

ответ

1

Выяснил это. Отправляйте ответ вместо удаления, потому что он может быть полезен для людей, новых для Linux, как я. По-видимому, команда sudo запускается в корневой среде и не сохраняет виртуальную среду (которая была местом расположения пакетов, в моем случае). Поэтому пакеты не существовали там, где python искал их, поскольку он просматривал местоположение пакета по умолчанию, а не пакеты виртуальной среды.

+0

В любом случае вам не нужно использовать 'sudo' с Anaconda, так как он по умолчанию устанавливается с разрешениями пользователя. Использование sudo просто приведет к проблемам будущих разрешений, потому что оно будет записывать файлы с разрешениями, так что вам нужно снова использовать 'sudo' для их изменения или удаления. – asmeurer

Смежные вопросы