我正在尝试在运行Raspbian Jessie的Raspberry Pi上从源代码构建和安装python 3.6.2。这是构建过程的过程:
$ ./configure --enable-optimizations --enable-ipv6 # everything seems fine
$ make -s -j$(nproc) # everything seems fine except for a few tests being skipped
$ make test # again, a few tests are skipped
$ sudo checkinstall -D make altinstall # FAILURE
错误是:
*snip*
running install_lib
copying build/lib.linux-armv7l-3.6/_codecs_cn.cpython-36m-arm-linux-gnueabihf.so -> /usr/local/lib/python3.6/lib-dynload
error: [Errno 2] No such file or directory
Makefile:1451: recipe for target 'sharedinstall' failed
make: *** [sharedinstall] Error 1
**** Installation failed. Aborting package creation.
Cleaning up...OK
Bye.
但是,该文件确实存在,目的地也存在:
$ ls build/lib.linux-armv7l-3.6/_codecs_cn.cpython-36m-arm-linux-gnueabihf.so
build/lib.linux-armv7l-3.6/_codecs_cn.cpython-36m-arm-linux-gnueabihf.so
$ ls /usr/local/lib/python3.6
config-3.6m-arm-linux-gnueabihf lib-dynload
基本上是wtf。我尝试在
Makefile
和setup.py
中四处寻找,但实际上没有时间完全掌握整个构建过程。这可能是怎么回事?我应该放弃使用checkinstall
吗?欢迎任何建议。 最佳答案
事实证明,这是一个checkinstall
错误,有些描述。我咬住子弹,跑了sudo make altinstall
,一切顺利。我对checkinstall
进行了更多研究,它似乎有一些...困难的错误。我最多不会将其标记为“越野车”,并且它在大多数情况下都运行良好,但是有时会出错,而且似乎没有太多可做的事情。