万网站长工具,dede模板打网站显示栏logo,互联网保险发展现状和趋势,厦门seo专业培训学校操作环境#xff1a;CentOS 7、Gcc 4.8.5、Python 3.10.0
系统上已经有 2.x#xff0c;3.6 版本的 Python 了#xff0c;但是还是想装一个 3.10 的。因为刚写的脚本文件是较高版本的#xff0c;在 3.6 上无法正常运行#xff0c;Python 语法不是很了解#xff0c;只能从…操作环境CentOS 7、Gcc 4.8.5、Python 3.10.0
系统上已经有 2.x3.6 版本的 Python 了但是还是想装一个 3.10 的。因为刚写的脚本文件是较高版本的在 3.6 上无法正常运行Python 语法不是很了解只能从环境上下手了。
【注】Python 其他版本也适用毕竟是编译器的问题并非 Python 版本问题。
下载源码文件然后开始执行操作
./configure --enable-optimizations
make
sudo make install然后报错如下下面是两个机器不同的报错
# 报错一
gcc -pthread -Xlinker -export-dynamic -o python Programs/python.o libpython3.10.a -lcrypt -lpthread -ldl -lutil -lm -lm
./python -E -S -m sysconfig --generate-posix-vars ;\
if test $? -ne 0 ; then \echo generate-posix-vars failed ; \rm -f ./pybuilddir.txt ; \exit 1 ; \
fi
Could not import runpy module
Traceback (most recent call last):File /opt/Python-3.10.0/Lib/runpy.py, line 15, in moduleimport importlib.utilFile /opt/Python-3.10.0/Lib/importlib/util.py, line 14, in modulefrom contextlib import contextmanagerFile /opt/Python-3.10.0/Lib/contextlib.py, line 4, in moduleimport _collections_abc
SystemError: built-in function compile returned NULL without setting an exception
generate-posix-vars failed
make: *** [pybuilddir.txt] Error 1# 报错二
make build_all CFLAGS_NODIST -fprofile-use -fprofile-correction LDFLAGS_NODIST
make[1]: Entering directory /usr/local/src/Python-3.10.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 ; \
fi
Could not import runpy module
Traceback (most recent call last):File /opt/Python-3.10.0/Lib/runpy.py, line 15, in moduleimport importlib.utilFile /opt/Python-3.10.0/Lib/importlib/util.py, line 14, in modulefrom contextlib import contextmanagerFile /opt/Python-3.10.0/Lib/contextlib.py, line 4, in moduleimport _collections_abc
SystemError: built-in function compile returned NULL without setting an error
generate-posix-vars failed
make[1]: *** [pybuilddir.txt] Error 1
make[1]: Leaving directory /opt/Python-3.10.0
make: *** [profile-opt] Error 2导致原因
在低版本的gcc版本使用 gcc 命令并带有 --enable-optimizations 参数时会出现上面问题。在 gcc 8.1.0 此问题已经修复。
解决方法
1、升级gcc至 8.1.0不是很推荐可能会影响其他软件的编译。 2、./configure参数中去掉 --enable-optimizations。然后执行下面的命令
./configure
make
sudo make install如果还不行就将解压的 Python 目录删除掉重新解压然后重新执行上面的命令。
Python 镇楼点下关注好不好我想申请博客专家 哭唧唧 个人博客 Roc’s Blog