没有模块_sha256安装cellProfiler

时间:2013-05-08 09:18:49

标签: python sha256 hashlib

我正在尝试在linux上为开发人员安装cellprofiler并获得一个名为“_sha256”的“无模块”错误。我在几个博客上找到了解决方案,但没有任何效果,有人可以帮我解决这个问题吗?

这是我的配置:

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

linux:

uname -m
i686

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

这是我得到的错误:

local@pc-ellenberg23:~/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安装上的错误消息的新手

非常感谢你

2 个答案:

答案 0 :(得分:5)

您缺少hashlib模块的库依赖项。

在Ubuntu上,您需要安装libsasl2-devlibssl-dev个软件包,然后重新编译(make -f Makefile.CP2 clean; make -f Makefile.CP2 PREFIX="${HOME}/usr/cp2" CellProfiler个依赖项。

答案 1 :(得分:1)

我终于手动安装了它,没有使用他们的makefile(安装所有依赖项,并执行cellprofiler.py文件。我不得不改变他们的代码一点点(他们使用系统环境变量,它会产生错误(搜索)我的libjvm.so文件在错误的路径(i386而不是i686))  它似乎从java_home变量自动生成 libjvm.so 文件的路径,但在我的情况下,创建的路径是错误的,(生成的路径:/ 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) 希望如果有人遇到同样的问题,这将有所帮助。 如果有人找到_sha256错误的解决方案,请告诉我。