编译安装新版本python

一般来说python是linux系统的标配,但是版本一般却很老,
而系统上面的很多服务可能与老的python存在依赖关系,我们又不能直接卸载。
所以一般,我们可以在一个单独的目录来安装python。

python安装有两种方法:
1.源码编译

2.使用pyenv
此处我们使用源码编译安装:
1.下载源码:https://www.python.org/ftp/python/ 此处有各个版本的python请自行下载、
首先,下载源码包,命令如下:
wget --no-check-certificate https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
这里需要特别注意一下,因为下载网址是https开头的,所以要给wget命令加上--no-check-certificate参数。
2.编译源码
解压: tar xf Python-2.7.6.tar.xz
进入目录:cd Python-2.7.6

查看支持模块:./configure --help
编译:./configure --prefix=/usr/local/python27
没有报错 执行make&&make install
安装完成后:
[root@localhost Python-2.7.6]# /usr/local/python27/bin/python2.7
Python 2.7.6 (default, Oct 19 2015, 04:18:14)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
3.安装ipython
tar xf ipython-1.2.1.tar.gz
cd ipython-1.2.1
/usr/local/python27/bin/python2.7 setup.py build

4.创建连接
ln -sv /usr/local/python27/bin/python2.7 /usr/bin/python27
ln -sv /usr/local/python27/bin/ipython /usr/bin/

======================================================

升级CentOS中的Python到2.7.5版本后发现Python在交互模式下方向键显示乱码。查找得知,是由于系统缺少了readline相关模块。CentOS 5.8默认只安装了readline模块而没有安装readline-devel模块,所以只要安装下即可。

#安装readline-devel
$yum install readline-devl
#重新安装python
$./configure
$sudo make install

到此问题应该已经解决了。如果还是不行,可以尝试使用Python自带的readline模块:

#首先配置一下
$./configure
#切换到Modules目录,修改Setup文件
$cd Modules
$vi Setup
#取消#readline readline.c -lreadline -ltermcap行的注释符
#然后再重新安装python
$make install

马哥教育 运维必备python基础语法全讲解在线观看地址:

本帖隐藏的内容

http://pan.baidu.com/s/1c0eq7bq 密码:nzex

% C6 X8 A. @! x( _2 ^0 P- T4 C) @
马哥教育 运维必备python基础语法全讲解下载地址:

本帖隐藏的内容

链接:http://pan.baidu.com/s/1kTDUeHL 密码:j022  解压密码:www.lthack.com

源码安装python的更多相关文章

  1. RHEL6从源码安装python及其他软件包

    RHEL6从源码安装python及其他软件包 ## install ssl $ sudo yum install openssl-devel or: $ sudo apt-get install li ...

  2. Linux基础--------监控系统、进程管理、软件包管理-------free、dd、kill、 rpm、yum、源码安装python

    作业一:1) 开启Linux系统前添加一块大小为15G的SCSI硬盘 2) 开启系统,右击桌面,打开终端 3) 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区 ...

  3. 06 swap命令,进程管理,rmp命令与yum命令,源码安装python

    作业一: 1)开启Linux系统前添加一块大小为15G的SCSI硬盘 2)开启系统,右击桌面,打开终端 3)为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大 ...

  4. 源码安装python +NGINX 的坎坷路 +uwsgi安装 部署django 的CRM项目

    一.Nginx安装(基于ubuntu17.10 版本) 首先我们是基于源码安装,主要有如下步骤 1.安装依赖包 1.安装gcc g++的依赖库 sudo apt-get install build-e ...

  5. Cenos(6.6/7.1)下从源码安装Python+Django+uwsgi+nginx到写nginx的环境部署(一)

    梳理下这几个的关系: centos是redhat的社区版操作系统. Python2.7.5是开发语言(centos6.5下自带的python是2.6.6版本,所以需要源码更新,而centos7.1下面 ...

  6. centos 源码安装python

    一.准备环境 首先在官网下载想要的python对应版本http//www.python.org/downloads/source 下载tgz就可以了.文件有两种 1,Python-版本号.tgz(解压 ...

  7. 源码安装python及paramikon的初步试用

    Auth: jin Date: 20140314 OS: CentOS release 5.5 (Final) 默认2.4版本 莫 1.download wget http://www.python. ...

  8. linux源码安装python及pip和django

    1安装编译工具 yum install zlib-devel bzip2-devel openssl-devel python-devel kernel-devel libffi-devel ncur ...

  9. linux上源码安装python

    Linux安装Python2.7 以下例子基于python 2.7.9,其他版本同理.# 1.下载python# wget https://www.python.org/ftp/python/2.7. ...

随机推荐

  1. Java: xml转换

    java对于xml的转换有很多种,比较有名的有:DOM, DOM4J, JDOM, SAX.这里要介绍的是javax.xml包的对xml文件的转换.相比于前面几种是最简单的. 直接上代码: Stude ...

  2. 如何使用highmaps制作中国地图

    如何使用highmaps制作中国地图 文章目录 Highmaps 所需文件 地图初始化代码 highmaps 渲染讲解 highmaps 中国各城市坐标的json文件 highmaps 线上DEMO ...

  3. [ubuntu] ubuntu13.04安装rabbitcvs管理svn

    加入源 sudo add-apt-repository ppa:rabbitvcs/ppa 更新 sudo apt-get update 安装软件 sudo apt-get install rabbi ...

  4. 在linux中的virtualbox无法挂载usb设备的解决方法

    方法来源于网络. 在安装完virtualbox之后,virtualbox会建立一个名为 vboxusers 的组,将你的用户名加入到该组即可. 命令参考: #usermod -a -G vboxuse ...

  5. crontab 误区

    # For details see man 4 crontabs# Example of job definition:# .---------------- minute (0 - 59)# | . ...

  6. 战舰的STM32的SPI的逻辑分析仪设置

  7. zabbix监控phpfpm

    php-fpm status详解 pool – fpm池子名称,大多数为wwwprocess manager – 进程管理方式,值:static, dynamic or ondemand. dynam ...

  8. linux内核中异步通信机制--信号处理机制【转】

    转自:http://blog.csdn.net/lu_embedded/article/details/51131663 什么是异步通信?很简单,一旦设备准备好,就主动通知应用程序,这种情况下应用程序 ...

  9. java 类型转化

    String 转int s="12345"; int i; 第一种方法:i=Integer.parseInt(s);;//直接使用静态方法,不会产生多余的对象,但会抛出异常 第二种 ...

  10. js获取随机色

    方法一: var getRandomColor = function(){ return '#' + (function(color){ return (color += '0123456789abc ...