1.问题描述
根据Python版本的不同,目前Python主要划分为两大类,即:Python2.x与Python 3.x。其中,Python2.x在各种项目中应用广泛,得到众多社区的支持,而Python3.x作为最新的版本,逐渐成为未来Python语言的发展趋势,开始被应用于各种项目。可见,为满足开发项目对Python版本的要求,需要在当前操作系统环境中配置独立的运行环境,基于Python的virtualenv工具能够满足该任务要求。另外,通过配置独立Python环境可以避免直接安装另一Python版本造成系统内某些脚本无法正常运行的问题。
2.具体任务
操作系统版本号:CentOS Linux release 7.2.1511
主要使用工具:virtualenv
目标Python版本号:python 2.7.5 与 python 3.4.3
3.过程描述
3.1 安装Python3.4.3
由于操作系统自带Python2.7.5(Python 2.x)语言版本,只需要安装与配置Python3.4.3(Python 3.x)语言版本即可。
Python3.4.3安装与配置脚本如下所示:
wget https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz
tar -xzvf Python-3.4.3.tgz
cd Python-3.4.3
./configure --prefix=/usr/local --with-ensurepip=install
make
sudo make altinstall
在Linux终端运行上述命令,可以在指定目录/usr/local/bin/中找到已经完成编译的python3.4语言版本,并且通过执行"python --version"后比较,可发现系统Python默认解释器版本并未改变。
注意要点:
1)“./configure”一行命令用于生成Makefile文件,用于下一阶段的编译步骤,其中,“--prefix”选项用于指定软件安装目录,以上述脚本为例,已知指定软件安装目录为“/usr/local”,相关执行文件则安装在其下的bin目录中,即:/usr/local/bin,资源文件则安装在其下的share目录中,即:/usr/local/share;“--with-ensurepip”选项用于确保pip工具能够正确安装,为推荐选项。
2)“sudo make altinstall”一行命令用于安装已经编译完成的软件代码,一般要求以root身份执行。这里使用“make altinstall”而不是使用“make install”的原因是“make altinstall”会跳过Makefile文件中创建Python相关软链接的步骤,避免“make install”直接生成链接覆盖原有Python版本,造成系统脚本无法正常运行。
3)当脚本执行到”sudo make altinstall”命令时,系统可能报错。比如,软件安装时出现“Python installation error: pip 6.0.8 requires ssl/tls”错误,这是由于Python pip工具需要SSL包才能被安装,其解决方法是使用yum包管理工具安装“openssl-devel”包,其执行命令如下所示。
sudo yum install openssl-devel
3.2 安装virtualenv
3.2.1 配置pip工具
1)安装pip工具
wget -q http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py
sudo easy_install pip
2)更新pip工具
sudo pip install --upgrade pip
3.2.2配置virtualenv工具
1)安装virtualenv工具
sudo pip install virtualenv
2)更新virtualenv工具
sudo pip install --upgrade virtualenv
3.3 配置Python独立环境
3.3.1 配置Python3.x环境
1)创建虚拟环境
根据上述Python3.4安装目录指定Python解释器版本,在当前用户的家目录中创建“py34env”目录,利用该名称使用相关环境。
sudo virtualenv -p /usr/local/bin/python3.4 py34env
2)激活虚拟环境
运行如下所示命令即可激活虚拟环境,终端shell提示符随之增加“(py34env)”字眼,用户可以在该环境中配置各种项目。
source py34env/bin/activate
3)退出虚拟环境
deactivate
3.3.1 配置Python2.x环境
1)创建虚拟环境
根据上述Python2.7安装目录指定Python解释器版本,在当前用户的家目录中创建“py27env”目录,利用该名称使用相关环境。
sudo virtualenv -p /usr/local/bin/python2.7 py27env
2)激活虚拟环境
运行如下所示命令即可激活虚拟环境,终端shell提示符随之增加“(py34env)”字眼,用户可以在该环境中配置各种项目。
source py27env/bin/activate
3)退出虚拟环境deactivate
4.问题总结
结合实际环境与前人经验,成功地利用virtualenv工具对Linux环境中Python项目环境进行配置,并总结成文。
若有错误之处,请各位大牛指出。
Github:https://github.com/o7878x
E-mail:dongcai.mo@gmail.com