centos7安装python3.x(亲测有效)

windows版的就不多说了,很简单,下面重点介绍下centos7下安装python3.x
注:一般情况centos7都会自带python2.x,但是我们想用python3.x时怎么办呢?

这里有个坑,暂时不要下载3.8.1,官网目前3.8.1可能有bug还是什么,死活装不上,过段时间可以试试。

make build_all CFLAGS_NODIST=" -fprofile-use -fprofile-correction" LDFLAGS_NODIST=""
make[1]: Entering directory `/usr/local/src/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 ; \
fi
Could not import runpy module
Traceback (most recent call last):
  File "/usr/local/src/Python-3.8.0/Lib/runpy.py", line 15, in <module>
    import importlib.util
  File "/usr/local/src/Python-3.8.0/Lib/importlib/util.py", line 14, in <module>
    from contextlib import contextmanager
  File "/usr/local/src/Python-3.8.0/Lib/contextlib.py", line 4, in <module>
    import _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 `/usr/local/src/Python-3.8.0'
make: *** [profile-opt] Error 2

如果装python3.8.1会报上面的错误。

1.下载python3.8.0
打开WEB浏览器访问 https://www.python.org/downloads/source/
选择到3.8.0版本,其他早期版本也行

# tar -zxvf Python-3.8.0.tgz
# cd Python-3.8.1
# ./configure
# make && make install

下面会出现很长的一大串,不用管

cd /usr/bin
#修改老版本名字
mv python python_bak
#建立新版本python的软链接
ln -s /usr/local/bin/python3 /usr/bin/python3

输入python -V验证,如下则成功

[root@localhost bin]# python 
Python 3.8.0 (default, Jan  9 2020, 23:10:16) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

这种方法虽然能安装成功,但是它带来了新的问题,比如yum不能正常用了

修改/usr/bin/yum的第一行为:

#!/usr/bin/python_bak

完成

你可能感兴趣的:(centos7安装python3.x(亲测有效))