诚邀访问我的个人博客:我在马路边

更好的阅读体验点击查看原文:Centos7安装Python3.7

原创博客,转载请注明出处

@

全新Centos7系统安装 Python3.7,虽然在Centos7已经预先存在了python2.7版本,但是不要慌,编译安装Python3.7是和原先的旧版本没有任何冲突的,原有的Python是在/usr/bin目录下,是可以共存的。

下面介绍了安装步骤以及安装过程中遇到各种坑在此记录一下。T-T


下载Python

官网下载Python,下载地址:https://www.python.org/downloads/source/, 选择要下载的版本,这里选择Download Gzipped source tarball 下载,不同时期可能下载页面不一样,请自行寻找,good luck for you。

下载后将文件用ssh传到centos即可,存放目录放在opt/python(自建哈)下就可以,然后执行下术命令


Python安装

Python安装过程很简单,执行下述命令即可,但是在 make 和 make install 过程中会遇到很多问题,请先看遇到问题章节,可以预先要开错误。

# 解压文件
$ tar -xvzf Python-3.7.0.tgz
# 进入解压后目录
cd Python-3.7.0
$ # 添加对应配置将要安装的目录 安装后就在/usr/python下
$ ./configure --prefix=/usr/python
# 执行安装
$ make
# 然后执行
$ make install

如果上述操作遇到问题参考下面遇到问题章节,如果成功install后即可发现在/usr目录下会有python文件夹,原有的在/usr/bin目录下。

系统中原来的python在/usr/bin/python,通过ls -l可以看到,python是一个软链接,链接到本目录下的python2.6。

我们可以把这个删除,也可以新建一个python3的软链接,只不过执行时python要改成python3,或者python脚本头部声明要改为#!/usr/bin/python3。

这里为了方便建议先重命名一下,然后建立个软链接就可以了,之前的程序头部也不用更改:

$ mv /usr/bin/python /usr/bin/python.bak
$ ln -s /usr/python/bin/python3 /usr/bin/python

遇到问题

在安装过程中遇到了几个错误,在此记录下,错误都是需要相关依赖导致安装失败,详细内容如下:

错误: configure: error: no acceptable C compiler found in $PATH

此问题是执行./configure --prefix=/usr/python时编译缺少gcc环境,具体错误及解决如下:

# 错误如下:
configure: error: in `/usr/local/src/pythonSoft/Python-3.7.0':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details # 解决办法,安装gcc环境
$ yum install -y gcc # 安装成功后重新执行
$ ./configure --prefix=/usr/python

错误: can't decompress data; zlib not available

在执行make命令安装过程中会遇到错误can't decompress data; zlib not available,是因为缺少zlib依赖导致,安装zlib即可,命令如下

# 安装zlib依赖
$ yum -y install zlib*
# 然后再执行
$ make
$ make install

错误: ModuleNotFoundError: No module named '_ctypes'

make install安装遇到ModuleNotFoundError: No module named '_ctypes'问题,执行如下命令:

# Python3.7中缺少libffi-devel依赖
$ yum install libffi-devel -y
# 然后再执行即可
$ make install

小结

锣鼓喧天鞭炮齐鸣红旗招展人山人海,到此Python终于安装结束了,互联网拯救了我,再次感谢如下博主资料:

https://www.cnblogs.com/jellydong/p/7724169.html

https://blog.csdn.net/qq_31306973/article/details/78538601

https://blog.csdn.net/qq_36416904/article/details/79316972

https://blog.csdn.net/blueheart20/article/details/72827666

诚邀访问我的个人博客:我在马路边

更好的阅读体验点击查看原文:Centos7安装Python3.7

原创博客,转载请注明出处

Centos 7 安装 Python3.7的更多相关文章

  1. centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'

    centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...

  2. CentOS下安装Python3

    目录 CentOS下安装Python3 下载 解压 配置 gcc sudo权限 vim 编译 安装 添加软链接 pip安装出错,找不到SSL 安装virtualenv和virtualenvwrappe ...

  3. CentOS/RedHat安装Python3

    CentOS/RedHat安装Python3 摘自:https://blog.csdn.net/mvpboss1004/article/details/79377019 CentOS/RedHat默认 ...

  4. 【vps】Centos 7安装python3.8.5

    [vps]Centos 7安装python3.8.5 前言 由于服务器的搬迁,从香港搬到了大陆,原来的香港服务器即将到期,所以趁着大陆服务器在备案的时候,将新服务器的配置先配置一下.这篇文章就是分享C ...

  5. CentOS 6 安装 Python3.5以及配置Django

    http://www.jianshu.com/p/6199b5c26725 文/FiveStrong(简书作者)原文链接:http://www.jianshu.com/p/6199b5c26725著作 ...

  6. Centos 7安装python3

    纯傻瓜式步骤,保证成功. 下面的操作,按照步骤来就可以了,不要在中途cd 到别的文件目录下,要想查看效果可以用 lsj加上对应的目录,不需要切换进去. 首先不管你当前在哪个目录下,输入以下命令. [r ...

  7. CentOS 7安装Python3.6过程(让linux系统共存Python2和Python3环境)

    CentOS 7系统自带了python2,不过可以不用2版本,直接使用python3运行python脚本就可以,但是千万别去动系统自带的python2,因为有程序依赖目前的python2环境,比如yu ...

  8. CentOS Linux安装python3

    本文的方法是在CentOS上新装了python3,如果本机安装了python2则保留,因为可能有程序依赖目前的python2环境,比如yum!!!!! 一.安装python3.7 1. 安装依赖环境 ...

  9. 在CentOS上安装Python3的三种方法

    Centos7默认自带了Python2.7版本,但是因为项目需要使用Python3.x你可以按照此文的三个方法进行安装. 注:本文示例安装版本为Python3.5, 一.Python源代码编译安装 安 ...

  10. CentOS 7安装Python3.5

    CentOS 7下安装Python3.5 •安装python3.5可能使用的依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-deve ...

随机推荐

  1. echarts3.8.4实现模拟迁移

    动态接受城市的经纬度https://zhidao.baidu.com/question/1384875311724922940.html 调用百度api获得ip对应的城市https://www.cnb ...

  2. OC导入框架方式#import、@import的区别

    #import负责导入程序所需的文件的信息导入到程序中,随着程序所需的文件越来越多,程序就要导入更多的文件,这就带来了越来越长的编译时间,而且有大量重复的.为了解决这个问题可以采用以下办法解决,创建. ...

  3. 【Head First Servlets and JSP】笔记14:session再探 & Listener示例

    对于session的“CRUD” 会话迁移 别忘了HttpSessionBindingListener Listener示例 1.session的“增”与“删”——session的创建和撤销的调用主体 ...

  4. matplotlib模块之子图画法

    一般化的子图布局 首先要创建各个子图的坐标轴,传入一个四元列表参数:[x,y,width,height],用来表示这个子图坐标轴原点的x坐标.y坐标,以及宽和高.值得注意的是,这四个值的取值范围都是[ ...

  5. Eclipse 换主题、皮肤、配色,换黑色主题护眼

    Eclipse写android代码时,默认的文本和框架都是白色,长时间使用,显得过于刺眼.这里介绍三种方法换黑色护眼配色. 1.系统设置里更改 2.从Eclipse Marketplace里下载主题 ...

  6. window.open、window.showModalDialog和window.showModelessDialog 的区别[转]

    一.前言 要打开一个可以载入页面的子窗口有三种方法,分别是window.open.window.showModalDialog和window.showModelessDialog. open方法就是打 ...

  7. 百度竞价推广URL通配符使用说明

    {keywordid} 被替换为触发该创意的关键词ID(全局唯一ID,不是字面ID),当没有对应的keywordid时,替换为0. {creative} 被替换为所点击的创意ID(全局唯一ID). 2 ...

  8. Struts2获取参数的几种方式

    Struts2由于是一个贴心的框架,所以获取参数这种体力活,就无需再通过原生的request来getParameter了,有如下几种方式进行获取 1.Action中属性驱动,必须提供与form表单na ...

  9. ZooKeeper学习第八期---ZooKeeper伸缩性

    转:http://www.cnblogs.com/sunddenly/p/4143306.html 一.ZooKeeper中Observer 1.1 ZooKeeper角色 经过前面的介绍,我想大家都 ...

  10. 防域名DNS劫持 从保护帐号安全做起

    什么攻击能造成区域性的网络瘫痪?没错,DNS劫持.这个堪称核武器的攻击方式,一旦爆炸,后果不堪设想.2014年1月21日,全国大范围出现DNS故障,下午,中国顶级域名根服务器出现故障,大部分网站受影响 ...