1 centos下安装
首先前往python官网下载安装包(Linux版本)
编译版本:
https://www.python.org/ftp/python/3.7.12/Python-3.7.12.tgz
二进制版本:
https://www.python.org/ftp/python/3.7.12/Python-3.7.12.tar.xz
我下载的是编译版本,下载后上传至服务器,移动到usr/local下,解压
tar -zxvf Python-3.7.12.tgz
重命名目录
mv Python-3.7.12 python3
进入目录
cd python3
执行安装
./configure
报错
configure: error: in `/usr/local/Python-3.7.7':
configure: error: no accepta
原因:没有gcc
安装gcc
yum -y install gcc automake autoconf libtool make
重新执行安装
./configure
#注意:这里的configure是配置文件的意思,它在解压后的文件夹下,是一个文件,执行它即可:./configure …… 这样执行,上面的命令需根据实际文件位置。
执行编译
make
编译安装
make install
输入python3
完成!!!
#执行
#make install
#软连接
#ln -s /usr/soft/python/bin/python3.6 /usr/local/bin/python3
升级pip(可选)
pip install --upgrade pip
2 Ubuntu下安装
前面步骤完全一致
安装gcc
apt-get install gcc automake autoconf libtool make
安装后可以看到并没有成功,报了一个错误,说zlib不可用,如果成功跳过,如下图:
在linux中安装zlib-devel,依次输入下面的命令:
apt-get install ruby
apt-get install zlib1g-dev
可能还会出现No module named '_ctypes’问题
apt install libffi-dev
在使用pip3时提示
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
大致意思就是安装过程需要SSL,但是那个SSL找不到。
查阅资料后,发现openSSL是系统自带的,所以一定是安装了的,本人用以下命令尝试再次安装openssl:
apt-get install openssl
apt-get install libssl-dev
但是安装结果显示是对其进行更新(update),这说明系统已经安装了openssl。但是pip3就是找不到ssl模块。
查阅资料发现,在./configure过程中,如果没有加上–with-ssl参数时,默认安装的软件涉及到ssl的功能不可用,刚好pip3过程需要ssl模块,而由于没有指定,所以该功能不可用。
解决办法是重新对python3.7进行编译安装,用一下过程来实现编译安装:
最后进行重新编译安装
./configure --with-ssl
make
make install