首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为Python的特定版本编译Python模块

为Python的特定版本编译Python模块
EN

Stack Overflow用户
提问于 2018-12-06 21:39:13
回答 1查看 96关注 0票数 2

RI必须手动编译Ubuntu16.04上的Python库/模块,并且遇到了问题。图书馆在这里:

DIPlib 3- PyDIP

它是OpenCV的一个量词。问题是在运行命令时:

代码语言:javascript
复制
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文件路径,以便它知道在哪里找到编译的代码?或者,如果我完全错了,我如何正确地编译这段代码以在我的系统上工作?我一直在阅读有关环境变量和系统路径的文章,但我认为我对它的理解还不够深入,以至于我的电脑不会因此而受到破坏。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-20 15:45:04

PyDIP CMake脚本在构建时应该更喜欢Python3而不是Python2,您可以尝试使用最新的master来查看这是否会给您带来更好的运气。

如果这不起作用,您可以添加

代码语言:javascript
复制
-DPYBIND11_PYTHON_VERSION=3.5

CMake命令指定要针对哪个版本的Python。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53660065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档