centos7编译安装python3

写在前面

       以往linux系统中默认安装的都是python2版本,随着python官方说python2将在2020年停止维护,linux系统也开始逐渐使用python3,有的linux发行版都开始自带python2和python3。但是我购买的阿里云服务器centos还没有安装python3,所以我自己摸索着安装python3.

1. 下载python3源码

       使用wget命令下载,下载地址。我下载的是python3.6.9(我试着下载过python3.7,当时出现了一些错误,我没有去解决,重新装的python3.6.9)

cd ~ #下载到的路径无所谓,只要能知道下载的压缩包在哪里就可以
wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz

2. 解压

tar -xvf Python-3.6.9.tgz

       解压后再相应家目录下出现Python-3.6.9目录,我并没有使用-C来制定文件解压后的位置,因为在配置的时候可以配置python3安装的目录,解压后的文件相当于是我们的安装包,不需要的话可以删掉。

3. 配置并编译安装

       使用tar命令解压后的文件应当在当前家目录下,所以要先进入Python-3.6.9,然后进行相应的配置。

cd Python-3.6.9
./configure --prefix=/usr/local/python3.6

       稍微解释上面这句命令,这句话的大致目的就是把python的安装目录指定一下,这样的话,里面的一些bin目录、lib目录就都会存放在这个目录下面。如果不指定这个安装目录的话,最后python的安装文件将分散到linux的默认目录,不在一块。我们指定安装目录,以后卸载的话直接删除目录就可以干净卸载了。自己安装的软件一般是安装在/usr/local目录下的,所以我将python3安装在/usr/local目录下,python3.6文件夹可以没有,在安装的时候回自行创建。
       现在我们当前目录还是在~/Python-3.6.9,执行如下命令:

make

       然后出来一大堆代码,等它执行完毕。接着输入以下命令:

sudo make install

       又是一大堆代码,执行完毕之后,我们就可以切换到/usr/local/python3.6目录下去查看了。

cd /usr/local/python3.6
ls -l

       ls命令执行结果为
ls命令结果

4. 后续工作

       安装好了python3之后,我们的系统中已经有了python3,但是我们无法直接在shell中输入python或者python3来调用我们安装的python版本,所以我还需要创建一个软链接来调用我们自己安装的python3。具体代码为:

cd /usr/bin
sudo ln -s /usr/local/python3.6/bin/python3.6 python3

       执行完毕后,可以使用以下代码查看是否创建好软链接

ls -l python*

显示安装的python
       因为系统中已经有python软链接指向了python2.7,所以我在创建软链接的时候起名为python3。在这里并不建议修改python的指向,因为系统中某些命令还在使用python2,而在调用的时候用的就是python软链接,胡乱改有可能造成其他命令无法使用,例如yum命令。虽然可以修改yum文件让其继续使用python2版本,但是万一有时候自己下载的软件需要用到python2的时候,可能就会出现导入包错误。

测试使用

python3
>>>print("hello world")

       我发现使用python3的时候无法使用删除键和退格键,会显示成^H^M等,后来知道要使用

yum install readline-devel

重新编译安装即可。

以上就是安装的全部过程,现在来捋一下安装的大致思路。

  1. 新建一个用于安装python3的目录。
  2. 下载,编译,安装。
  3. 创建软链接
  4. 测试使用。

文中都是我个人的理解,如有错误的地方欢迎下方评论告诉我,我及时更正,大家共同进步

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值