CentOS6.9下从源代码开始编译安装Python3.7.2

前言:

      从Python3.7开始,安装需要使用openssl 1.0.2及以上版本(如:1.1)。CentOS6.9默认安装的是openssl 1.0.1 故需要对openssl做版本升级。以下的Python编译及安装过程均基于CentOS6.9和Python3.7.2版本,敬请注意。

从源码开始编译安装Python3.7.2

1. 安装wget和yum-utils实用集合

sudo yum -y install wget
sudo yum -y install yum-utils

2. 安装编译工具

sudo yum -y install gcc gcc-c++

3. 安装依赖包

sudo 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

3. 编译安装openssl 1.0.2

3.1. 查看当前安装的openssl版本号

openssl version -a

3.2. 安装依赖包

sudo yum install -y perl

sudo yum install -y zlib

3.3. 进入下载目录下载openssl 1.0.2r源码包

cd ~/download

wget https://www.openssl.org/source/openssl-1.0.2r.tar.gz

3.4. 解压openssl源码包

tar xvf openssl-1.0.2r.tar.gz

3.5. 进入解压后的目录

cd openssl-1.0.2r

3.6. 配置编译参数

./config shared zlib

3.7. 编译源码

make

3.8. 安装openssl 1.0.2 (默认安装目录在/usr/local/ssl下)

sudo make install

3.9. 备份CentOS6.9下原来的openssl 1.0.1(系统原始openssl的安装根目录在/usr下)

sudo mv /usr/bin/openssl /usr/bin/openssl.bak

sudo mv /usr/include/openssl /usr/include/openssl.bak

3.10. 为新安装的openssl 1.0.2 创建软链接

sudo ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

sudo ln -s /usr/local/ssl/include/openssl /usr/include/openssl

3.11. 查看新安装的openssl版本号

openssl version -a

3.12. 添加lib库自动搜索路径到/etc/ld.so.conf,然后ldconfig使设置生效,这样就不用每次export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH了。

sudo echo "/usr/local/ssl/lib" >> /etc/ld.so.conf

sudo ldconfig

至此openssl 1.0.2安装完成。下面继续开始Python 3.7.2的编译和安装。

4. 创建并进入下载目录下载Python3.7.2源码包

mkdir pythonsrc
cd pythonsrc
wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz

5. 解压Python3.7.2源码包

tar xvf Python-3.7.2.tgz

6. 进入解压后的Python3.7.2目录

cd Python-3.7.2

7. 配置Python3.7.2的安装目录和开关

./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/ssl --with-ssl-default-suites=openssl --enable-optimizations --enable-loadable-sqlite-extensions

8. 编译Python3.7.2

make

9. 安装Python3.7.2

nohup sudo make install &

10. 创建python3执行程序软链接

sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3

11. 将/usr/local/python3/bin加入当前用户.bash_profile的PATH环境变量,增加sudo别名,在执行时传入PATH环境变量

vi ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
alias sudo='sudo env PATH=$PATH'
:wq

12. 生效环境变量

source ~/.bash_profile

13. 检查Python3及pip3版本

python3 -V
pip3 -V

至此CentOS6.9下从源码编译安装Python3.7.2完成。

P.S. 在上面第11步加入sudo别名一行的目的是解决sudo pip3 时报pip3 not found的错误。该错误的原因是编译sudo的时候加入了–with-secure-path 选项。

顺便做个广告,美国虚拟服务器提供商Vultr目前有不定期结束的新用户送50美元Credit的活动,送的Credit可用于租用Vultr的虚拟服务器。点击下面的链接进去注册新用户试试吧。Vultr有各种配置的虚拟服务器提供,按月收费,新手建议从低配置服务器开始,用他们送的Credit先练练手。

限时活动:注册Vultr新用户送50美元Credit,不定期结束,先到先得。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值