Linux CentOS安装Python3.7.3以及纠错

简介: Linux CentOS安装Python3.7.3以及纠错

尝试在CentOS7上安装Python3.7,对一个新手来说,还是有挺多东西需要注意的。具体步骤如下:


1、下载

下载python3,wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz

解压到本地目录,比如现在在/home/user1,会在当前目录产生一个Python-3.7.3目录。

tar -xzvf Python-3.7.3.tgz


2、make安装

进入Python-3.7.3目录,先configure

./configure --prefix=/usr/local/python3.7.3

成功(此时已经将安装文件放到/usr/local的目录了)。


make && make install


麻烦了,出错了。提示:Module Not Found Error: No module named '_ctypes'

那么理论上我应该找到_ctypes才行。


查了一下csdn前辈们的足迹,原来3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可。这个问题归属于python的错误31652 https://bugs.python.org/issue31652

#yum install libffi-devel -y
    #make install


如果……又很不幸,先把原来的python2给删除了,恭喜,又中奖了。那么需要去centos.org上面找rpm包,以rpm方式安装libffi。这里不再赘述。当然,你在百度上面libffi centos rpm,就能在rpmfind.NET上找到下载,注意选择自己的操作系统版本啊。


查了一下这个issue,哇btw,Ubuntu也会出现问题的,这里有一个18版本的依赖大礼包:

> I expect that the root cause is missing libffi(-dev[el]) on your system
Yes, on my Ubuntu 18.04, `make` failed to compile _ctypes module.
After install libffi-dev, it was compiled successfully:
One more word, full necessary dependencies on my Ubuntu 18.04:
sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2-dev zlib1g-dev libssl-dev openssl libgdbm-dev libgdbm-compat-dev liblzma-dev libreadline-dev libncursesw5-dev libffi-dev uuid-dev


如果libffi安装到了别的地方……参考以下:

 

the reason was that libffi was installed under /opt/local, so the fix was:
    ./configure LDFLAGS='-L/opt/local/lib -R/opt/local/lib'


3、建立快捷方式(链接)


完了么?没完。此时,/home/user1/python3.7.3中应该有python可执行程序了,但是系统可能还不知道,在任何一个目录输入python时,到make之后的目录找python程序。如果是系统自带,我的是python2.7,运行一下python,会告知你这是:2.7.5。或者python --version,可以看到输出版本号。


再找到软链接。查看python命令在当前系统对应哪一个文件。


>whereis python
python: /usr/bin/python ...

查看这个python对应的是什么 ls -al /usr/bin/python

/usr/bin/python -> python2


让我们用一个软链接指向新安装的python3这里吧。


mv  ./python pythonold
#将原来的python链接改名
cp /usr/local/python3.7.3/python3 /usr/bin/python3
#拷贝新的python到bin目录,这也是一个链接文件,指向的是local/python3.7.3下面的python3.7
ln -s ./python3 ./python
#如果连接文件已经有了,我也可以直接修改连接文件来建立链接
ln -snf /usr/local/python3.7.3/python3 /usr/bin/python


现在输入python看到version是3.7.3了。进入python解释环境之后:

>>import time
>>print(time)
<module‘time(built-in)’>
>>import sys
>>print(sys.path)
['', '/usr/local/python3.7.3/lib/........']


4、建立pip


还有一个东西没装,pip。在/usr/local/python3.7.3/bin下面可见pip3

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

#建立pip到pip3的链接


python3.7是没有安装numpy的,安装一个试试:

pip install numpy

如果正常的开始collecting,就没问题了。



目录
相关文章
|
12天前
|
PyTorch Linux 算法框架/工具
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
这篇文章是关于如何使用Anaconda进行Python环境管理,包括下载、安装、配置环境变量、创建多版本Python环境、安装PyTorch以及使用Jupyter Notebook的详细指南。
114 1
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
|
10天前
|
Linux
手把手教会你安装Linux系统
手把手教会你安装Linux系统
|
2天前
|
Linux 测试技术 网络安全
Linux系统之安装OneNav个人书签管理器
【10月更文挑战第19天】Linux系统之安装OneNav个人书签管理器
16 5
Linux系统之安装OneNav个人书签管理器
|
4天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
16 4
Linux系统之安装Ward服务器监控工具
|
6天前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
22 2
Linux系统之安装cook菜谱工具
|
8天前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
34 4
Linux系统之Ubuntu安装cockpit管理工具
|
9天前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
32 1
Linux系统之Centos7安装cockpit图形管理界面
|
10天前
|
NoSQL Ubuntu Linux
Linux平台安装MongoDB
10月更文挑战第11天
22 5
|
10天前
|
Python
Python 三方库下载安装
Python 三方库下载安装
13 1
|
10天前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。