Python导入无法找到共享对象文件(C++扩展)

2024-06-09 09:54:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在为Python 3创建一个C++扩展模块。汇编设置.py文件编译得很好,但是当我要导入新模块时,我得到

ImportError: libMyLib.so: cannot open shared object file: No such file or directory

这是通往我的路。所以: /path/to/lib-cc7/libMyLib.so

我试图在设置.py在不同的方式下,我尝试在终端和.bash配置文件中设置和重新设置LD_LIBRARY_PATH变量。我试着把路插进去搜索路径. 在

当我在import语句之前运行此代码时:

print(os.environ.get("LD_LIBRARY_PATH")) 
print(os.environ.get("PYTHONPATH"))

我得到了正确的库目录的路径。在

当我运行strace时,我需要显示到other.so的路径,我看到它在搜索libMyLib.so,但它只搜索所有其他目录和/path/to/lib-cc7/。在其他库搜索中,它检查/path/to/lib-cc7/。在

我已经查过图书馆大概5次了。在

不管我做什么

import MyModule.MySubModule as SubModule

总是返回相同的导入错误。还有什么我没试过的吗?为什么Python好像找错地方了?在

编辑1:

这是我的什么设置.py(本质上)看起来像:

^{pr2}$

Tags: 模块topathpyimport路径solib