我有一个包,它带有swig包装C for Python,我正试图升级到Python 3。我是在Linux(CentOS((在Docker环境中提供(下构建它的。
我的问题是,编译和链接选项假设我使用的是Python 2.7。也就是说,编译包括
-I/usr/include/python2.7
并且该链路包括
-lpython2.7
我通过包含一个编译选项来找到Python3的include目录:来完成编译
CC="gcc -I/usr/include/python3.6m" python setup.py build_ext
但由于找不到python2.7库,链接失败:
/usr/bin/ld:找不到-lython2.7collect2:错误:ld返回1退出状态
如何告诉distutils我现在是Python 3商店"python";已经给出";蟒蛇3";。
正如Jens所指出的,虽然我以为我用Python 3调用setup.py,但实际上我使用的是Python 2。将其修复到Python3解决了我的问题。