RI必须手动编译Ubuntu16.04上的Python库/模块,并且遇到了问题。图书馆在这里:
它是OpenCV的一个量词。问题是在运行命令时:
cmake /home/cooper/diplib-master/ -DCMAKE_INSTALL_PREFIX=$HOME/dip -DPYDIP_INSTALL_PATH=$(python3 -m site --user-site)正如在说明中所描述的,它在路径/home/cooper/.local/lib/python3.5/site-packages/PyDIP/PyDIP_bin.so中构建文件。当我使用python3 my_program.py运行我的代码时,我会得到以下错误:
未定义符号:_Py_ZeroStruct。
我试着用默认路径(针对我的系统的python2.7)和Zero Struct错误解组来编译它,但是由于代码是为Python 3编写的,所以它不能按照预期的方式工作(获取导入错误,用于import get)。因此,我的问题是如何将Python或Ubuntu指向.local文件路径,以便它知道在哪里找到编译的代码?或者,如果我完全错了,我如何正确地编译这段代码以在我的系统上工作?我一直在阅读有关环境变量和系统路径的文章,但我认为我对它的理解还不够深入,以至于我的电脑不会因此而受到破坏。
发布于 2019-01-20 15:45:04
PyDIP CMake脚本在构建时应该更喜欢Python3而不是Python2,您可以尝试使用最新的master来查看这是否会给您带来更好的运气。
如果这不起作用,您可以添加
-DPYBIND11_PYTHON_VERSION=3.5CMake命令指定要针对哪个版本的Python。
https://stackoverflow.com/questions/53660065
复制相似问题