如何告诉pythons numpy在哪里可以找到liblapack.so.3?
问题描述:
因此,我必须在集群上运行一些python脚本,而这些脚本没有管理员权限。由于缺少numpy,在一些机器上,我创建了一个虚拟环境并在那里安装了numpy。我连接到一台我知道它没有python的机器上,并通过~my_env/bin/python
启动了virtualenv python解释器来检查import numpy
。如何告诉pythons numpy在哪里可以找到liblapack.so.3?
我得到这个错误:
# Some trace...
ImportError: liblapack.so.3: File was not found # or something similar.
于是我在网上发了一些研究,有人想出了LD_LIBRARY_PATH
。所以我加了
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/me/lib; export LD_LIBRARY_PATH
我的.bashrc
来源。我把liblapack.so.3
放入/home/me/lib;
。现在,当我尝试导入numpy时,我收到错误消息:
ImportError: liblapack.so.3: wrong ELF class: ELFCLASS32
现在我卡住了。任何想法可能会出错?
群集机器上安装了Suse。
答
该错误意味着liblapack.so.3
C库的格式与Python本身的二进制格式不同。这种特殊错误的通常原因是有一个64位的Python,而是一个32位的C库。您需要以相同的方式编译Python和C库。