centos安装编译安装python

(1)习惯更新下yum源

yum update

提示:如果网速不是很好,或者安装时间很急的情况下,那就不要更新yum源了。(超级费时间)

(2)安装python3.7所需依赖

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

(3)再执行安装一个工具,不安装会导致pip安装失败

yum install libffi-devel -y

(4)下载python

网址:https://www.python.org/ftp/python/

这上面有python的各种版本,找到对应版本,比如3.7.3,则下载命令为:

进入/root文件夹下

cd /root

(再执行命令)

wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz

(5)配置编译

  解压:

tar -zxvf Python-3.7.3.tgz
cd Python-3.7.3

配置编译的的路径:

默认的安装目录是 /usr/local 如果你要改成其他目录可以在编译(make)前使用 configure 命令后面追加参数 “–prefix=/path” 来完成修改。

提前在 usr/local/下创建好python3.7.3文件夹,还是建议提前创好,  给上root 777权限【可能会避免很多bug】。

./configure --prefix=/usr/local/python3.7.3 --enable-shared  CFLAGS=-fPIC --enable-optimizations

(6)编译和安装

make && make install

(7)添加软链接(可以直接使用python和pip命令)

添加软链或者添加到环境变量,下边是添加软连接:

ln -s /usr/local/python3.7.3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3.7.3/bin/pip3.7 /usr/bin/pip3

注意:

/usr/local/python3.7.3/bin/python3.7   和   /usr/local/python3.7.3/bin/pip3.7  是你在/usr/local/python3.7.3/bin

这个文件夹里看到安装后是什么名称就写什么。

后面的/usr/bin/python3和pip3 是因为系统自带安装python2.7和pip,所以为了共存,不要去取代原来的,以后执行命令用

python3和pip3就行。

(8)添加动态链接库路径

这个时候直接执行命令:   python3 或者 pip3

会出现错误:

error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory

问题原因:这是因为centos下安装python3没有将编译后python/lib下的文件放入默认库/usr/lib或/lib中,导致初始化时没有加载库文件。
解决办法:将lib添加至配置信息中

执行下面命令:

cd /etc/ld.so.conf.d  #打开这个文件夹

vim python3.conf    #打开这个文件编辑,会自动创建这个文件
/usr/local/python3.7.3/lib


#将这句命令添加到刚打开的编辑器中,按 i  切换输入命令模式,输入这行路径,按ESC转为保存模式,
输入  :wq   保存更改。 

ldconfig   #现在退出了编辑器,路径停留在ld.so.conf.d文件夹下,执行这句命令,是配置立即生效

OK,这个时候已经完美使用了。

(9)更新下pip到最新版本

后面一直会用到pip下载库,所以更新下pip有必要。

更新命令,随便在哪里执行,因为pip3已经是全局命令:

pip3 install --upgrade pip

(10)添加打包pyinstaller软链接

因为后面肯定会用到打包工具,索性把打包的软链接一起添加了。

pip3 install pyinstaller
ln -s /usr/local/python3.7.3/bin/pyinstaller /usr/bin/pyinstaller

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值