linux下python的安装详情

1、查看当前Linux的python版本

# python -V

linux下python的安装详情

 我的Linux当前版本是2.×.×,需要安装3.×.×

以python3.7.5为例

2、进入 /opt 目录下

# cd /opt

3、创建soft文件夹

# mkdir soft

4、进入soft文件夹下载python3.7.5的包

# cd soft 

# wgit https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz

5、解压python包

# tar -zxvf Python-3.7.5.tgz

6、进入解压后的Python-3.7.5 文件夹,进行安装python

# cd Python-3.7.5

# ./ configure

linux下python的安装详情

如果执行报错:configure: error: no acceptable C compiler found in $PATH,说明没有安装合适的编译器。这时,需要安装/升级 gcc 及其它依赖包。

安装依赖包命令:yum -y install gcc

linux下python的安装详情

 安装完成再次执行 ./ configure

linux下python的安装详情

 进行编译

# make

如果执行报错:make: *** No targets specified and no makefile found.  Stop.,有以下几种方式可以尝试解决

1)update最新版本系统软件

# yum update

这个必须要执行后才可以安装我们的系统软件或者一键包。

2)编译缺失关联软件

# yum install gcc build-essential

编译执行完毕之后,我们在执行./configure && make这类的执行命令就可以解决问题。

3)Linux下各种依赖都已经安装,是因为没有找到makefile。

如果是自己写的,确定在当前目录下;如果是源码安装,先运行./configure,生成makefile,再执行make,即可正常运行。

4)如果没有安装其他依赖先安装依赖

yum install gcc gcc-c++ autoconf automake

yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel (安装依赖zlib、openssl和pcre)

注:

update最新版本系统软件(apt-get update),这个必须要执行后才可以安装我们的系统软件或者一键包。

编译缺失关联软件(apt-get install gcc build-essential)

编译执行完毕之后,我们再执行./configure,make这类的执行命令就可以解决问题。

进行安装

# make install

安装完成后,执行python3 -V命令检查是否安装成功

linux下python的安装详情

 7、将Python3.7.5设置为默认版本

1)查看当前python指向的连接

# ls -al /usr/bin | grep python

linux下python的安装详情

2)可以看到如果执行python命令,指向的是python2.7版本,需要将默认版本设置为3.7.5,我们就要将原来 python 的软链接重命名:

# mv /usr/bin/python /usr/bin/python.bak

3)再将python命令指向python3:

# ln -s /usr/local/bin/python3 /usr/bin/python

4)再查看python的版本

# python -V
linux下python的安装详情

8、升级完Python3.7.5,需把修改yum的配置文件:

将 /usr/libexec/urlgrabber-ext-down 和 /usr/bin/yum 中的#!/usr/bin/python 改为 #!/usr/bin/python2.7

# vim  /usr/libexec/urlgrabber-ext-down(:wq保存并退出)

linux下python的安装详情

# vim /usr/bin/yum(:wq保存并退出)

linux下python的安装详情

 9、由于目前系统中默认的Python版本为3.7.5,所以直接执行pip 安装命令即可安装项目中需要的扩展库

1)查看pip版本,pip -V,如果版本低于18,执行pip install --upgrade pip 升级pip版本

如果遇到ssl问题,执行rpm -aq|grep openssl查看是否有openssl-devel文件,如没有yum install openssl-devel -y安装 ,安装成功后,修改vi /opt/soft/Python-3.6.5/Modules/Setup,增加

#_codecs_cn cjkcodecs/_codecs_cn.c

#_codecs_hk cjkcodecs/_codecs_hk.c

#_codecs_iso2022 cjkcodecs/_codecs_iso2022.c

#_codecs_jp cjkcodecs/_codecs_jp.c

#_codecs_kr cjkcodecs/_codecs_kr.c

#_codecs_tw cjkcodecs/_codecs_tw.c

# Example -- included for reference only:

# xx xxmodule.c

# Another example -- the ‘xxsubtype‘ module shows C-level subtyping in action

xxsubtype xxsubtype.c

# Socket module helper for socket(2)

_socket socketmodule.c timemodule.c

# Socket module helper for SSL support; you must comment out the other

# socket line above, and possibly edit the SSL variable:

#SSL=/usr/local/ssl

_ssl _ssl.c \

-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \

-L$(SSL)/lib -lssl -lcrypto

保存并退出后,重新安装Python:

cd /opt/soft/Python-3.6.5

make

make install

这时候在执行pip安装就可以了。