2013-05-08 4 views
2

Я пытаюсь установить cellprofiler для разработчиков на linux и получить ошибку «no module named _sha256». Я просмотрел несколько блогов, чтобы найти решения, но ничего не сработало, может кто-нибудь поможет мне исправить это?no module _sha256 установка cellProfiler

вот моя конфигурация:

Python 2.7.3 (default, Aug 1 2012, 05:16:07) 
[GCC 4.6.3] on linux2 

линукс:

uname -m 
i686 

Distributor ID: Ubuntu 
Description: Ubuntu 12.04.2 LTS 
Release:  12.04 
Codename:  precise 

и вот ошибка я получаю:

[email protected]:~/Softwares/cellProfiler/CellProfiler$ make -f Makefile.CP2 PREFIX="${HOME}/usr/cp2" 
All pre-checks executed successfully. 
export PATH="/home/local/usr/cp2/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/java-7-openjdk-i386/bin:/usr/lib/jvm/java-7-openjdk-i386/bin:/usr/lib/jvm/java-7-openjdk-i386/bin" && \ 
        export LD_LIBRARY_PATH="/home/local/usr/cp2/lib:${LD_LIBRARY_PATH}" && \ 
        sh setuptools-0.6c11-py2.6.egg --prefix="/home/local/usr/cp2" 
Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
    File "/home/local/Softwares/cellProfiler/CellProfiler/setuptools-0.6c11-py2.6.egg/setuptools/command/easy_install.py", line 21, in <module> 
    File "/home/local/Softwares/cellProfiler/CellProfiler/setuptools-0.6c11-py2.6.egg/setuptools/package_index.py", line 2, in <module> 
    File "/home/local/usr/cp2/lib/python2.6/urllib2.py", line 93, in <module> 
    import hashlib 
    File "/home/local/usr/cp2/lib/python2.6/hashlib.py", line 138, in <module> 
    sha224 = __get_builtin_constructor('sha224') 
    File "/home/local/usr/cp2/lib/python2.6/hashlib.py", line 66, in __get_builtin_constructor 
    import _sha256 
ImportError: No module named _sha256 
make: *** [/home/local/usr/cp2/bin/easy_install] Error 1 

жаль, если ошибка кажется глупым, я новый при работе с сообщением об ошибке на установках Linux

Большое спасибо

+0

Ваш след показывает, что вы используете Python 2.6, а не 2.7. –

ответ

1

Я, наконец, установил его вручную, не используя их make-файл (установив все зависимости и выполнив файл cellprofiler.py. Мне пришлось изменить их код на бит litle (они используют переменную системной среды и вызывают ошибку (поиск моего файла libjvm.so в неправильном пути (i386 вместо i686)) Кажется, что путь для файла libjvm.so автоматически из переменной java_home, но в моем случае созданный путь был неправильным (сгенерированный путь:/usr/lib/jvm/java-6-openjdk-i386/jre/lib/i686 /server/libjvm.so и реальный путь:/usr/lib/jvm/java-6-openjdk-i386/jre/lib/i386 /server/libjvm.so) надеюсь, что это wi Помогите, если у кого-то будет такая же проблема. Пожалуйста, дайте мне знать, если кто-то нашел решение для ошибки _sha256.

4

Вам не хватает зависимости библиотеки для модуля hashlib.

В Ubuntu, вам необходимо установить libsasl2-dev и libssl-dev пакеты, а затем перекомпилировать (make -f Makefile.CP2 clean; make -f Makefile.CP2 PREFIX="${HOME}/usr/cp2" ) в CellProfiler зависимости.

+0

Извините, но вы можете уточнить? Я попытался установить libsasl2-dev, но он «уже обновлен». Я не делал никаких «./Configure», я следил за руководством по установке на веб-сайте cellprofiler [https://github.com/CellProfiler/CellProfiler/wiki/CellProfiler-Developer% 27s-version-install-for-Linux]. Спасибо за вашу помощь! – jo0din

+1

Я вижу, что 'CellProfiler' создает двоичный код Python; Я не знаком с тем, как их Makefile управляет установкой Python, но установка Python уже должна была найти 'libsasl2-dev'. Вы также можете попытаться добавить 'libssl-dev' (оба нужны здесь, я думал, что последний затягивается первым). Я обновил свой ответ, основываясь на быстрой проверке make-файла 'CellProfiler'. –

+0

кажется, все еще не работает. Я мешаю вам, когда я обнаружил, что такое ошибка. Спасибо за вашу помощь! – jo0din