本文由ilanniweb提供友情赞助,首发于烂泥行天下

想要获得更多的文章,可以关注我的微信ilanniweb

前几天在centos6.6安装ansible时,一直提示python版本不对,导致不能安装。只能手工进行手工安装python,为了以后不再添这个坑,特记录相关的安装过程。

本文以python2.7和python3.5安装为例。

一、安装python2.7

在安装python之前,我们先来安装在进行python编译时,所需要的的各种依赖软件包,如下:

yum -y install xz wget gcc make gdbm-devel openssl-devel sqlite-devel zlib-devel bzip2-devel

依赖软件包安装完毕后,我们来下载pytho2.7源码包,并进行相关的操作,如下:

wget http://mirrors.sohu.com/python/2.7.12/Python-2.7.12.tar.xz

tar -xf Python-2.7.12.tar.xz

cd Python-2.7.12

./configure --enable-shared --enable-loadable-sqlite-extensions --with-zlib

配置完毕后,开始进行编译和安装,如下:

make && make install

如果安装没有正确错误的话,正确显示如下:

二、修改系统默认python版本

centos6系列默认的python版本为python2.6.6,如果我们要修改系统默认的python版本的话,需要进行如下操作。

执行以下命令,对python2.6进行备份,然后为python2.7创建软链接,如下:

mv /usr/bin/python /usr/bin/python2.6.6

ln -s /usr/local/bin/python2.7 /usr/bin/python

此时,我们可以执行python –V命令,如果出现如下错误:

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

需要编辑配置文件/etc/ld.so.conf添加新的一行内容/usr/local/lib,保存退出,如下:

vim /etc/ld.so.conf

include ld.so.conf.d/*.conf

/usr/local/lib

ld.so.conf文件配置完毕后,我们需要执行如下命令:

/sbin/ldconfig

/sbin/ldconfig -v

然后再执行python –V命令,查看python版本如下:

通过上图可以看到系统默认的python版本已经被修改为python2.7。

三、修改yum相关配置

python2.7安装完毕,由于版本的原因可能会导致yum命令不能使用,就需要我们进行相关的配置。

我们需要先把python2.6备份起来,然后再对yum的配置文件进行修改。如果不进行这一步操作的话,执行yum命令将会提示你python的版本不对。

然后再编辑/usr/bin/yum文件,将第一行的#!/usr/bin/python修改为#!/usr/bin/python2.6.6,如下:

vim /usr/bin/yum

#!/usr/bin/python2.6.6

现在执行yum命令已经不会出现错误信息了。

四、python3.5安装命令

在以上三个章节中,我们介绍了python2.7的安装,这章我们把python3.5安装命令贴出来,就不进行详细的介绍了。

安装相关依赖:

yum -y install xz wget gcc make gdbm-devel openssl-devel sqlite-devel zlib-devel bzip2-devel

安装python3:

wget http://mirrors.sohu.com/python/3.5.2/Python-3.5.2.tar.xz

tar -xf Python-3.5.2.tar.xz

cd Python-3.5.2

./configure --enable-shared --enable-loadable-sqlite-extensions --with-zlib

make && make install

修改系统的默认python版本:

mv /usr/bin/python /usr/bin/python2.6.6

ln -s /usr/local/bin/python3 /usr/bin/python

vim /etc/ld.so.conf

/usr/local/lib

include ld.so.conf.d/*.conf

/sbin/ldconfig

python –V

修改yum使用的python版本:

vim /usr/bin/yum

#!/usr/bin/python2.6.6

烂泥:python2.7和python3.5源码安装的更多相关文章

  1. [Dynamic Language] Python3.7 源码安装 ModuleNotFoundError: No module named '_ctypes' 解决记录

    Python3.7 源码安装 ModuleNotFoundError: No module named '_ctypes' 解决记录 源码安装时报错 File "/home/abeenser ...

  2. Python3.5 源码安装 Ubuntu16.04环境

    安装源码编译所需的各种依赖库:(Ubuntu16.04环境下) sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-de ...

  3. Centos7 Python3.x源码安装

    第一步,安装开发工具集 yum -y groupinstall "Development tools" 第二步,安装相关依赖包: yum -y install zlib-devel ...

  4. CentOS6.5源码安装python3.5.2

    前提: 1.实现自动补全需要安装模块 readline-devel (yum install -y readline-devel) 2.实现支持SSL协议需安装模块 openssl-devel (yu ...

  5. CentOS7 下源码安装 python3

    CentOS 7 下源码安装 python3   在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下:   1. 首先安装python3.6可能使用的依 ...

  6. linux下python3源码安装及卸载

    Linux下Python3的源码编译安装和卸载方法 [日期:2019-06-21] 来源:博客园  作者:wuli潇萧 [字体:大 中 小]     (一)Linux下软件的源码编译安装和卸载方法 L ...

  7. 烂泥:php5.6源码安装与apache集成

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. apache对php的支持是通过apache的mod_php5模块来支持的,这点与nginx不同.nginx是通过第三方的fastcgi处理器才可以对p ...

  8. 烂泥:源码安装apache

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近要开始学习nagios监控方面的知识了,但是nagios与apache结合的比较紧密,所以本篇文章就先把apache的源码安装学习下. 我们现在分以 ...

  9. 烂泥:mysql5.5数据库cmake源码编译安装

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...

随机推荐

  1. Hyper-V1:创建和管理虚拟机

    Hyper-V是微软的管理虚拟机(Virtual Machine)的服务,在安装Hyper-V功能之后,系统自动安装可视化的虚拟机管理工具:Hyper-V Manager.在同一台物理机上,能够使用H ...

  2. ASP.NET免费服务器~支持MVC和Net4.5

    1.先注册一个号.地址:https://appharbor.com/ 2.看看有没有你需要的插件,基本上都是免费的 3.本地创建git库 4.复制git远程仓库的地址 5.推送到远程仓库 6.查看自己 ...

  3. SQLServer 2016安装时的错误:Polybase要求安装Oracle JRE 7更新51或更高版本

    异常处理汇总-数据库系列  http://www.cnblogs.com/dunitian/p/4522990.html 水印就不加了,在老家~(另一篇文章好像没发布成功,简单说下,2016安装完毕是 ...

  4. jQuery系列:DOM操作

    1. 访问元素 在访问页面时,需要与页面中的元素进行交互式的操作.在操作中,元素的访问主要包括对元素属性.内容.值.CSS的操作. 1.1 元素属性操作 1.1.1 设置或返回被选元素的属性值 语法格 ...

  5. ODBC、OLE DB、 ADO的区别

    转自:http://blog.csdn.net/yinjingjing198808/article/details/7665577 一.ODBC ODBC的由来 1992年Microsoft和Syba ...

  6. objC与js通信实现--WebViewJavascriptBridge

    场景   在移动端开发中,最为流行的开发模式就是hybmid开发,在这种native和h5的杂糅下,既能在某些需求中保证足够的性能,也可以在某些列表详情的需求下采用h5的样式控制来丰富内容.但是在大型 ...

  7. 【分布式】Zookeeper序列化及通信协议

    一.前言 前面介绍了Zookeeper的系统模型,下面进一步学习Zookeeper的底层序列化机制,Zookeeper的客户端与服务端之间会进行一系列的网络通信来实现数据传输,Zookeeper使用J ...

  8. [C1] 优化 C1FlexGrid 单元格边框

    一  优化理由 如下图所示,如果按照 C1FlexGrid 自带的单元格边框设置,即对每个单元格的 CellStyle 的 BorderThickness 进行设置,会得到如下图的效果: 其中,明显可 ...

  9. angular-JS模仿Form表单提交

    直接上示例代码,有不懂的欢迎留言: $http({ url: "http://localhost:10086/yuanxin/Conference/ImportExcelDataForBus ...

  10. java.lang.Class.isAssignableFrom()用法解析

    一.概述: 此方法主要用来判断 "参数类" 是否是 "源类" 的子类.接口实现类,或者与 "源类" 相同,在此情况下返回 true; 二.格 ...