Centos 6.x 共存安装Python 2.7 or 3.x

由于yum命令依赖系统的python2.6, 所以如果直接覆盖的话,会导致yum不能工作。 所以自带的python 2.6绝对不能动。 不过可以通过自定义安装来共存两套或多套python环境。 再配合virtualenv 隔离项目环境.

这里演示安装Python2.7 :

首先安装系统依赖包

yum install zlib-devel
yum install bzip2-devel
yum install openssl-devel
yum install ncurses-devel
yum install sqlite-devel

下载Python2.7 源码编译安装

cd /usr/local/src;
wget --no-check-certificate https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tar.xz
tar xf Python-2.7.11.tar.xz
cd Python-2.7.11
./configure --prefix=/usr/local/python27
make && make install

安装pip

使用python27安装pip

 wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
/usr/local/python27/bin/python ez_setup.py
/usr/local/python27/bin/easy_install pip

到这里python2.7.11 和 pip套件都安装了可以使用了。 下一步就是把/usr/local/python27/bin/ 加入$PATH变量。

安装virtualenvwrapper

这一步实在自带的python2.6 上执行的, 所以如果用python 2.7 需要再创建的虚拟环境的时候指定

pip install virtualenvwrapper

然后再~/.bashrc文件追加以下操作

~/.bashrc or ./zshrc

source $(which virtualenvwrapper.sh)

然后source ~/.bashrc 这样就可以使用workonmkvirtualenvrmvirtualenv命令.具体的指南参考 virtualenvwrapper

创建基于Python 2.7 的虚拟环境

mkvirtualenv ansible -p /usr/local/python2.7.11/bin/python

错误处理

第一个错误, source $(which virtualenvwrapper.sh)出现logging no NullHandler

Traceback (most recent call last):
  File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
    exec code in run_globals
  File "/usr/lib/python2.6/site-packages/virtualenvwrapper/hook_loader.py", line 16, in <module>
    from stevedore import ExtensionManager
  File "/usr/lib/python2.6/site-packages/stevedore/__init__.py", line 23, in <module>
    LOG.addHandler(logging.NullHandler())
AttributeError: 'module' object has no attribute 'NullHandler'
virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is

处理方法, 升级stevedore

pip install stevedore

python 2.6.6 可以升级到1.3.0 就可以了.

注意: 转载请注明原地址, 首发平台http://omem.me, 及作者.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Python为主流开发语言, 用python 开发的程序越来越多。 方便的是大多linux系统里面都默认集成了py...
    53921f46e0b9阅读 64,266评论 3 18
  • 译者按:原文写于2011年末,虽然文中关于Python 3的一些说法可以说已经不成立了,但是作为一篇面向从其他语言...
    EarlGrey阅读 69,757评论 7 124
  • 参考链接:https://ruiaylin.github.io/2014/12/12/python%20updat...
    realla阅读 2,217评论 0 0
  • 2015年,互联网似乎比这个冬天更冷,企业市场几乎是唯一的一团火热。2016年,可能寒潮更甚,创业似乎并不是一个特...
    钱东辉阅读 1,227评论 1 3
  • 二八年华的我,少年不识愁滋味,为赋新词强说愁。爱酸溜溜的‘爱一人,择一城’的词句,爱大青天做白日梦,爱白马王子,爱...
    yesornoen阅读 360评论 0 0