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

更好的阅读体验点击查看原文: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. Spring笔记:事务管理

    Spring笔记:事务管理 事务管理 Spring事务管理是通过SpringAOP去实现的.默认情况下Spring在执行方法抛出异常后,引发事务回顾,当然你可以用拦截器或者配置去改变它们. 这部门内容 ...

  2. js判断有无属性

    访问元素属性 getAttribute 不存在返回null,特性名可不区分大小写 dom对象访问公共属性,自定义属性不能访问,div.id 访问对象属性 1.使用in关键字 该方法可以判断对象的自有属 ...

  3. $Eclipse+Tomcat搭建本地服务器并跑通HelloWorld程序

    本文结构:(一)环境准备(二)在Eclipse里创建Dynamic Web工程(三)写一个简单的Servlet类并配置web.xml(四)运行程序 (一)环境准备 1.Eclipse:要使用for J ...

  4. Linux基本命令 文件处理命令

    概述 命令格式:命令 [-选项] [参数] 例如:ls -la /etc 说明:1.个别命令使用不遵守此格式.2. 当有多个选项时,可以写在一起. ls 命令示例 文件打印命令cat.tac.more ...

  5. SOA、SOAP、REST、RPC

    1.SOA SOA(面向服务的软件架构.Service Oriented Architecture),是一种软件设计模式,主要应用于不同应用组件之间通过某种协议来互操作.例如典型的  通信网络协议.因 ...

  6. php数组函数-array_pop()

    array_pop()函数删除数组中的最后一个元素(出栈). array_pop(array) array:必需.规定数组 返回值:返回数组的最后一个值.如果数组是空,或者不是一个数组,将返回NULL ...

  7. debian内核代码执行流程(一)

    本文根据debian开机信息来查看内核源代码. 系统使用<debian下配置dynamic printk以及重新编译内核>中内核源码来查看执行流程. 使用dmesg命令,得到下面的开机信息 ...

  8. Could not autowire field: private javax.servlet.http.HttpServletRequest

    在写单元测试类的时候,报错,废了很大劲才给调试好,给大家分享下. 完整错误如下: Caused by: org.springframework.beans.factory.BeanCreationEx ...

  9. SecureCRT按退格键出现^H问题

    1.  选择选项>>会话选项>>终端>>映射键

  10. /var/spool/clientmqueue 爆满问题

    当你使用简单的sendmail发邮件的时候,或者系统默认要发一些邮件(比如cron发的邮件)的时候,首先会把邮件拷贝到这个目录里,然后等待MTA(mail transfer agent) 来处理,MT ...