CentOS編譯安裝Python 3.8
阿新 • • 發佈:2020-10-27
https://www.pythonf.cn/read/24249
4.2 編譯時提示Could not import runpy module錯誤
錯誤資訊如下,因為開啟了編譯優化,但gcc版本過低,升級gcc版本解決。
LD_LIBRARY_PATH=/opt/Python-3.8.0 ./python -E -S -m sysconfig --generate-posix-vars ;\if test $? -ne 0 ; then \ echo "generate-posix-vars failed" ; \ rm -f ./pybuilddir.txt ; \ exit 1 ; \fiCould not import runpy moduleTraceback (most recent call last): File "/opt/Python-3.8.0/Lib/runpy.py", line 15, in <module> import importlib.util File "/opt/Python-3.8.0/Lib/importlib/util.py", line 14, in <module> from contextlib import contextmanager File "/opt/Python-3.8.0/Lib/contextlib.py", line 4, in <module> import _collections_abcSystemError: <built-in function compile> returned NULL without setting an errorgenerate-posix-vars failedmake[1]: *** [pybuilddir.txt] Error 1make[1]: Leaving directory `/opt/Python-3.8.0'make: *** [profile-opt] Error 2
(1) --enable-optimization和--with-lto做了哪些優化 在stackoverflow上有個關於這個問題的討論: Python編譯優化都做了哪些?大體意思是能夠使python提升10%-20%速度。
(2) 升級gcc版本
- 安裝CentOS軟體集:yum install -y centos-release-scl
- 安裝編譯工具鏈:yum install -y devtoolset-8-toolchain
- 啟用新的工具鏈:scl enable devtoolset-8 bash