--linux安裝python3
centos系統本身默認安裝有python2.x,可通過python --version 查看系統自帶的python版本,有一些系統命令需要用到python2,安裝python3時不能卸載python2。
1、安裝依賴包
1)首先安裝gcc編譯器,gcc有些系統版本已經默認安裝,通過 gcc --version 查看,沒安裝的先安裝gcc,yum -y install gcc
2)安裝其它依賴包,(注:不要缺少,否則有可能安裝python出錯,python3.7.0以下的版本可不裝 libffi-devel )
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
2)下載
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
3)、解壓Python-3.7.0.tgz
tar -zxvf Python-3.7.0.tgz
4、建立一個空文件夾,用於存放python3程序
mkdir /usr/local/python3
5、執行配置文件,編譯,編譯安裝
cd Python-3.7.0 ./configure --prefix=/usr/local/python3 make && make install
安裝完成沒有提示錯誤便安裝成功了
7、建立軟連接
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3 ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3
8、測試一下python3是否可以用
[root@mini Python-3.7.0]# python3 Python 3.7.0 (default, Jul 28 2018, 22:47:29) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> print("hello world!") hello world! >>> exit() [root@mini Python-3.7.0]# pip3 --version pip 10.0.1 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)
可以看到python3.7.0可以正常使用
--##導入模塊時提示ModuleNotFoundError: No module named '_bz2'
需在python3中添加對zlib和bz2的支持
yum install zlib zlib-devel
yum install bzip2 bzip2-devel
重新編譯安裝
make install
--##導入模塊時提示 Could not import the lzma module. Your installed Python is incomplete. Attempting to use lzma compression will result in a RuntimeError.
需要安裝:
yum install xz-devel
yum install python-backports-lzma
pip install backports.lzma
重新編譯安裝
make install
--##導入模塊時提示:ModuleNotFoundError: No module named ‘_ctypes‘
需要安裝 libffi-devel
yum install libffi-devel -y
重新編譯安裝
make install
--##python命令行按刪除鍵時會出現 ^H 字符,無法正常刪除
安裝 readline 相關模塊
# yum install readline readline-devel
安裝完成后,需要再重新編譯安裝 Python:
# make install