CentOS 6.5上安装python2.7、pip以及Python命令行补全和yum冲突解决
目前CentOS6.5上自带的python版本为2.6,升级到python2.7会碰到很多问题。本文将介绍如何安装python2.7、pip以及python命令行补全。
一、如何安装python2.7
(1)gcc编译器,可以单独安装gcc,也可以安装“Development Tools” 。
yum -y install gcc 或者 yum -y groupinstall "Development tools"
(2)python依赖包
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel
(3)python2.7下载安装
wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
tar vxf Python-2.7.11.tgz
cd Python-2.7.11
./configure --prefix=/usr/local
make && make install
(4)软链接
如果在命令行想输入python直接链接到python2.7,可以建立python到python2.7的软链接。
#备份已有的python命令
mv python python-old
#建立python到python2.7的软链接
ln -s /usr/local/bin/python2.7 /usr/bin/python
二、如何安装pip
(1)安装依赖包setuptools
wget --no-check-certificate https://pypi.python.org/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz#md5=81964fdb89534118707742e6d1a1ddb4
tar vxf setuptools-21.0.0.tar.gz
cd setuptools-21.0.0
python setup.py install
(2)安装pip
wget --no-check-certificate https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7
tar vxf pip-8.1.1.tar.gz
cd pip-8.1.1
python setup.py install
(3)pip包的升级
pip install --upgrade pip
三、python命令行补全
默认情况下,python命令行是不能自动补全的,使用不友好,必须自动添加如下python代码才能实现自动补全。如下代码的文件名为tab.py:
1 #!/usr/bin/env python
2 #-*- coding:utf-8 -*-
3
4 import sys
5 import readline
6 import rlcompleter
7 import atexit
8 import os
9 readline.parse_and_bind('tab: complete')
10 histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
11 try:
12 readline.read_history_file(histfile)
13 except IOError:
14 pass
15 atexit.register(readline.write_history_file, histfile)
16 del os, histfile, readline, rlcompleter
如果缺少相应模块,还得自行通过pip安装相应缺失模块。根据相应的python安装路径,将tab.py文件拷贝到python对应lib目录下,例如上述python2.7的安装路径为/usr/local,其lib目录为/usr/local/lib/python2.7,那么将tab.py放置在该目录下即可。
这样在python命令行模式下导入tab,即
import tab
这样就可以实现python命令行的自动补全。
四、yum冲突解决
CentOS6.5升级python2.6到python2.7后,yum工具会报错,这是因为默认的yum工具是python2.6解析的,升级python2.7后同时做了软链接/usr/bin/python ---> /usr/bin/python2.7,这样
/usr/bin/python不能链接到/usr/bin/python2.6,所以yum工具报错,解决办法之一是修改/usr/bin/yum文件,及修改yum的解释环境,将/usr/bin/yum的解释器修改为“#!/usr/bin/python2.6”即可,这样yum会用python2.6解析,解决了冲突。
CentOS 6.5上安装python2.7、pip以及Python命令行补全和yum冲突解决的更多相关文章
- 在CentOS 6.5上安装python2.7
1.yum groupinstall “Development tools” 2.安装编译Python需要的组件 yum install zlib-devel bzip2-devel openssl- ...
- CentOS5.5上安装Python2.7及ez_setup和pip包
CentOS5.5上安装Python2.7及ez_setup和pip包 下载 首先从Python官方下载源代码包下载 编译安装 这里将python安装到/opt/python27文件夹下 tar xv ...
- [转]在Linux CentOS 6.6上安装Python 2.7.9
在Linux CentOS 6.6上安装Python 2.7.9 查看python安装版本 python -V yum中最新的也是Python 2.6.6,所以只能下载Python 2.7.9的源代码 ...
- node 在centos 6.5 上 安装过程中出现/usr/lib64/libstdc++.so.6: version 'GLIBCXX_3.4.19' not found问题的解决
node 在centos 6.5 上 安装过程中出现/usr/lib64/libstdc++.so.6: version 'GLIBCXX_3.4.19' not found问题的解决 在linux ...
- 在CentOS或RHEL上安装Nux Dextop仓库
介绍 Nux Dextop是类似CentOS.RHEL.ScientificLinux的第三方RPM仓库(比如:Ardour,Shutter等等).目前,Nux Dextop对CentOS/RHEL ...
- 如何在CentOS/RHEL & Fedora上安装MongoDB 3.2
MongoDB(名称取自"huMONGOus")是一个有着全面灵活的索引支持和丰富的查询的数据库.MongoDB通过GridFS提供强大的媒体存储.点击这里获取MongoDB的更多 ...
- CentOS 6.5上安装MySQL-Cluster
参考博文: CentOS 6.2下MySQL Cluster 7.2 配置数据库集群 CentOS 6.5上安装MySQL-Cluster 7.3.4过程笔记--下一步学习 MySQL Cluster ...
- CentOS 6.9上安装mysql-5.6.36
CentOS 6.9上安装mysql-5.6.36 1.准备数据存放的文件系统 新建一个逻辑卷,并将其挂载至特定目录即可.这里不再给出过程. 这里假设其逻辑卷的挂载目录为/data,而后需要创建/da ...
- 记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb
记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb 前段时间我个人Google服务器意外不能用,并且我犯了一件很低级的错误,直接在gcp讲服 ...
随机推荐
- xdebug常用配置
;指定xdebug文件 zend_extension = "F:\tools\develop_tools\php\php_xdebug-2.2.2-5.4-vc9.dll" ;xd ...
- JavaScript 二、eval 和 with 函数
/* * ========================================================= * * JavaScript 词法欺骗 * * 1.欺骗词法作用域,会导致 ...
- 【C++缺省函数】 空类默认产生的6个类成员函数
1.缺省构造函数. 2.缺省拷贝构造函数. 3. 缺省析构函数. 4.缺省赋值运算符. 5.缺省取址运算符. 6. 缺省取址运算符 const. <span style="font-s ...
- TArray<uint8>转FString
void ARamaUDPReceiver::Recv(const FArrayReaderPtr& ArrayReaderPtr, const FIPv4Endpoint& EndP ...
- vue+node+mongoDB火车票H5(七)-- nodejs 爬12306查票接口
菜鸟一枚,业余一直想做个火车票查票的H5,前端页面什么的已经写好了,node+mongoDB 也写了一个车站的接口,但 接下来的爬12306获取车次信息数据一直卡住,网上的爬12306的大部分是pyt ...
- 160525、高并发之mysql主从复制(linux)
第一步:新建两台linux主机(我这里是使用虚拟机,linux版本是CentOS-6.3-x86_64-bin-DVD1.iso,注意:我下载的是dvd1,如果其他版本默认安装可能会自动还原) 第二步 ...
- Python全栈day13(作业讲解字典嵌套实现用户输入地址信息添加及查看)
要求: 列出字典对应节点名称,根据用户输入可以添加节点,查看节点等功能,这里以地址省-市-县等作为列子,此题熟悉字典嵌套功能 vim day13-16.py db = {} path = [] whi ...
- [iOS微博项目 - 4.4] - 会员标识
github: https://github.com/hellovoidworld/HVWWeibo A.会员标识 1.需求 给vip会员打上会员标识 不同等级的vip会员使用不同的标识 使用橙色作为 ...
- C程序编译过程浅析(转)
前几天看了<程序员的自我修养——链接.装载与库>中的第二章“编译和链接”,主要根据其中的内容简单总结一下C程序编译的过程吧. 我现在一般都是用gcc,所以自然以GCC编译hellworld ...
- 研究php单例模式实现数据库类
实现单例模式:单例模式是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类.通过单例模式可以保证系统中一个类只有一个实例. 单例模式的逻辑:类里面声明一个静态的方法和变量,静态变量用 ...