目录
  1. 1. 安装依赖软件包
    1. 1.1. centos里面是-devel,如果在ubuntu下安装则要改成-dev,依赖包缺一不可.
  2. 2. 下载
  3. 3. 解压安装
  4. 4. 进入目录后,执行下面的命令
    1. 4.1. 或者在 shell 命令提示符下执行如下命令:
  5. 5. 开始编译安装
  6. 6. 创建软链接
  7. 7. 配置共享库文件
  8. 8. 测试python3
  9. 9. 测试 pip3
  10. 10. 特殊问题
Linux 编译安装Python3

安装依赖软件包

centos里面是-devel,如果在ubuntu下安装则要改成-dev,依赖包缺一不可.

1
2
yum -y groupinstall "Development tools"
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

下载

1
2
3
curl -o python3.7.tgz https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
// 或者
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

解压安装

1
2
tar -xf Python-3.7.0.tgz
cd Python-3.7.0/

进入目录后,执行下面的命令

修改文件 Python-3.7.0/Modules/Setup.dist, 去掉如下几行的注释 :

1
2
3
4
5
6
readline readline.c -lreadline -ltermcap

SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

或者在 shell 命令提示符下执行如下命令:

1
2
3
4
5
sed -ri 's/^#readline/readline/' Modules/Setup.dist
sed -ri 's/^#(SSL=)/\1/' Modules/Setup.dist
sed -ri 's/^#(_ssl)/\1/' Modules/Setup.dist
sed -ri 's/^#([\t]*-DUSE)/\1/' Modules/Setup.dist
sed -ri 's/^#([\t]*-L\$\(SSL\))/\1/' Modules/Setup.dist

开始编译安装

1
2
./configure --enable-shared --prefix=/usr/local/python3
make -j 2 && make install

–enable-shared 指定安装共享库,共享库在使用其他需调用python的软件时会用到,比如使用mod_wgsi 连接Apache与python时需要。

创建软链接

1
2
ln -s /usr/local/bin/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/bin/python3/bin/pip3 /usr/bin/pip3

配置共享库文件

为所有用户设置共享库目录

用 vim 编辑器打开配置文件 /etc/profile.d/python3.sh

1
vim /etc/profile.d/python3.sh

在文件末尾写上如下内容:

1
2
# python3.6 共享库目录
export PATH=$PATH:/usr/local/python3/bin

编辑文件 /etc/ld.so.conf.d/python3.conf,并且添加如下内容:

1
/usr/local/python3/lib

保存退出文件后, 执行如下命令 加载配置信息使其生效

1
ldconfig

执行如下命令,使环境变量生效

1
source /etc/profile.d/python3.sh

测试python3

1
2
3
4
5
6
7
$ python3
Python 3.6.3 (default, Dec 17 2017, 04:11:01)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('qf')
qf
>>> exit()

输入 exit() 即可退出 python3

测试 pip3

一般情况下你不需要执行下面的安装命令。

1
2
[root@newrain ~]# pip3 -V
pip 9.0.3 from /usr/local/lib/python3.6/site-packages (python 3.6)

假如上面显示的含有 python3.6 就没问题了,说名 pip3 安装的模块会安装到上面显示的目录下

特殊问题

假如 Python Shell 中敲击方向键显示「[[C[[D」
可以安装以下包

一般情况下你不需要执行下面的安装命令。

1
pip3 install gnureadline
文章作者: GZ
文章链接: https://gz1903.github.io/2019/10/08/Linux-编译安装Python3/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 GZ's Blog
打赏
  • 微信
  • 支付宝

评论