我正在尝试构建python3的本地版本(特别是python3.7,但是在3.6.6中也有同样的问题),但是在链接到一些C库和/或头时遇到了问题(至少我认为问题是这样的)。在
我可以构建python3.7,但是遇到了bzip2的问题(但是我怀疑还有其他系统库我没有注意到)。当尝试导入需要它作为导入错误的各种包/模块时,会出现这种情况:ModuleNotFoundError: No module named '_bz2'
从这个stackoverflow问题-Ask Question-看来,我构建的python没有正确的bz2头。python构建本身不会失败。在
具体的问题是如何用bz2构建python的本地版本?更一般地说,问题是如何正确地链接到系统库?(因为可能还有其他我没有遇到过的错误)
我遇到的第一个问题实际上是找到正确的库etc进行链接(上面问题中的解决方案建议设置CFLAGS="-I/path/to/bz2/include"和{})。这些可能是在我的系统中的某个地方(ubuntu16.04),因为python2.7和python3.5的系统安装没有bzip2的问题。在
我找到了libbz2.so.1(还有其他一些在)/lib/x86_64-linux-gnu/-但是文件夹似乎没有遵循上面的示例/答案的模式。因此,我构建了bz2的一个新的本地版本(在本地文件夹中的.bzp)中,然后在尝试构建python3.7时尝试链接到该版本,使用以下命令:
^{pr2}$
我还尝试了一个更通用的配置(它松散地基于Compile Python with bz2 support,在上面的第二篇文章中有链接)./configure --prefix=/home/user/.python CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"
(均未成功)
任何建议,提示等都非常感谢-提前谢谢!在