linux python3 编译安装
升级openssl:
- wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
- tar xvzf openssl-1.1.1a.tar.gz --directory /usr/local/src
- ./config --prefix=/usr/local/openssl
- make && make install
- mv /usr/bin/openssl{,.bak}
- mv /usr/include/openssl{,.bak}
- ln -sv /usr/local/openssl/include/openssl /usr/include/openssl 导出头文件
- ln -sv /usr/local/openssl/bin /usr/bin/openssl
- echo '/usr/local/openssl/lib' >> /etc/ld.so.conf.d/openssh.conf
- ldconfig -v
- openssl version
安装Python3:
- 安装依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel xz-devel xz lzma gdbm gdbm-devel libpcap-devel yum groupinstall 'development tools'
- 下载源码包
wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tar.xz
- 解压
tar xvf Python-3.9.1.tgz --directory /usr/local/src
cd /usr/local/src/Python-3.9.1 - 安装编译
./configure --prefix=/usr/local/python3 --enable-optimizations --enable-shared CFLAGS=-fPIC # --enable-optimizations 需要较高版本gcc支持 make && make install # 个别版本编译报错 sed -i -e '/^#SSL/,+3 s/^#//' -e '/^SSL/ s/ssl/openssl/' Modules/Setup
- 配置动态链接库
echo '/usr/local/python3/lib' >> /etc/ld.so.conf.d/python3.conf ldconfig -v
- 修改yum
/usr/bin/yum #!/usr/bin/python => #!/usr/bin/python2 /usr/libexec/urlgrabber-ext-down #!/usr/bin/python => #!/usr/bin/python2
- 增加连接
ln -svnf /usr/local/python3/bin/python3 /usr/bin/python ln -svnf /usr/local/python3/bin/pip3 /usr/bin/pip