环境说明:
- centos7 -- 镜像文件为:CentOS-7-x86_64-DVD-1804.iso(官网可以下载)
- 安装python版本:Python-3.5.4
-
安装编译依赖包,不可省略
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
yum install openssl-devel -y
# 解决该报错ModuleNotFoundError: No module named '_ctypes'
yum install libffi-devel -y
yum install zlib-devel -y
python3.7以上版本需要依赖yum install libffi-devel -y , 否则会提示ModuleNotFoundError: No module named '_ctypes'报错
-
下载python3版本包
解压软件包
tar -zxvf ./Python-3.5.5.tgz
-
编译python3
./configure prefix=/usr/local/python3 make && make install
-
创建python软链接,替换python3命令指向python
ln -s /usr/local/python3/bin/python3 /usr/bin/python # 执行验证 [root@localhost ~]# python Python 3.5.5 (default, May 25 2018, 12:19:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> # 注意版本号,3.5.5,此步骤说明python已经可以正常使用了。
-
创建pip软链接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip # 执行验证 [root@localhost winfonts]# pip --version pip 10.0.1 from /usr/local/python3/lib/python3.5/site-packages/pip (python 3.5) # 注意版本号,指向的python版本3.5的
-
问题归纳:
-
在实际部署时,出现了 pip - command not found 的错误
- 解决方案(重新安装pip):
wget https://bootstrap.pypa.io/get-pip.py python get-pip.py # 重新做 pip 软链接,测试即可
-
后期某些服务出现了无法启动的问题
- 解决方案(修改启动文件):
此处以防火墙服务为例:
[root@localhost ~]# vim /usr/sbin/firewalld
#!/usr/bin/python -Es 需要将文件第一行的python改为python2 ,因为此时的python已经指向了python3.5 #!/usr/bin/python2 -Es
- 解决方案(修改启动文件):
重新启动服务即可!每个服务的配置文件自行查询
link_from ; https://www.cnblogs.com/wenchengxiaopenyou/p/5709218.html
-