zoukankan      html  css  js  c++  java
  • 使用 pyenv 可以在一个系统中安装多个python版本

     

    Installl related

    yum install readline readline-devel readline-static -y
    yum install openssl openssl-devel openssl-static -y
    yum install sqlite-devel -y
    yum install bzip2-devel bzip2-libs -y

    Install pyenv

    git clone git://github.com/yyuu/pyenv.git ~/.pyenv
    
    vim ~/.bashrc
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH = "$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    
    source ~/.bashrc
    # exec $SHELL

    Check current version

    python -V

    List all version and install certain version

    pyenv install --list
    pyenv 3.5.1 install -v
    ## refresh database
    pyenv rehash
    
    ## if not new installed version, do like :
    pyenv global 3.5.1

    多环境

    # 创建新的环境,位于 ~/.pyenv/versions/
    $ pyenv virtualenv 2.7.1 env271
    
    # 切换到新的环境
    $ pyenv activate env271
    
    # 退回到系统环境
    $ pyenv deactivate
    
    # 删除新创建的环境
    $ rm -rf ~/.pyenv/versions/env271/

    Examples

    # 查看当前 pyenv 可检测到的所有版本,处于激活状态的版本前以 * 标示。
    $ pyenv versions
      system
    * 3.5.1 (set by /root/.pyenv/version)
      3.5.1/envs/flask_py351
      3.5.1/envs/pelican
      flask_py351
      pelican
    
    # 查看当前处于激活状态的版本,括号中内容表示这个版本是由哪条途径激活的(global、local、shell)
    $ pyenv version
    3.5.1 (set by /root/.pyenv/version)
    
    # 使用 python-build(一个插件) 安装一个 Python 版本,到 $PYENV_ROOT/versions 路径下。
    $ pyenv install -v 2.7.3
    
    # 卸载
    $ pyenv uninstall 2.7.3
    
    # 为所有已安装的可执行文件 (如:~/.pyenv/versions/*/bin/*) 创建 shims,
    # 因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令
    $ pyenv rehash
    
    # 设置全局的 Python 版本,通过将版本号写入 ~/.pyenv/version 文件的方式。
    $ pyenv global 3.4.0
    
    # 设置面向程序的本地版本,通过将版本号写入当前目录下的 .python-version 文件的方式。
    # 通过这种方式设置的 Python 版本优先级较 global 高。pyenv 会从当前目录开始向上逐级查找 .python-version 文件,直到根目录为止。
    #若找不到,就用 global 版本。
    $ pyenv local 2.7.3
    
    # 设置面向 shell 的 Python 版本,通过设置当前 shell 的 PYENV_VERSION 环境变量的方式。
    # 这个版本的优先级比 local 和 global 都要高。--unset 参数可以用于取消当前 shell 设定的版本。
    $ pyenv shell pypy-2.2.1
    $ pyenv shell --unset




  • 相关阅读:
    5 构建Mysql+heartbeat+DRBD+LVS集群应用系统系列之生产环境下drbd裂脑处理
    elk系列8之logstash+redis+es的架构来收集apache的日志
    elk系列7之通过grok分析apache日志
    elk系列6之tcp模块的使用
    elk系列5之syslog的模块使用
    elk系列4之kibana图形化操作
    elk系列3之通过json格式采集Nginx日志
    elk系列2之multiline模块的使用
    Docker探索系列2之镜像打包与DockerFile
    elk系列1之入门安装与基本操作
  • 原文地址:https://www.cnblogs.com/BinBinStory/p/7618336.html
Copyright © 2011-2022 走看看