linux下python的安装详情
1、查看当前Linux的python版本
# python -V
我的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
如果执行报错:configure: error: no acceptable C compiler found in $PATH,说明没有安装合适的编译器。这时,需要安装/升级 gcc 及其它依赖包。
安装依赖包命令:yum -y install gcc
安装完成再次执行 ./ configure
进行编译
# 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命令检查是否安装成功
7、将Python3.7.5设置为默认版本
1)查看当前python指向的连接
# ls -al /usr/bin | grep 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
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保存并退出)
# vim /usr/bin/yum(:wq保存并退出)
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安装就可以了。