之前写过python 3.x的独立安装,相对来说比较简单直接安装即可,因为对于系统默认的python版本是2.x,那么安装3.x的时候只需要编译到新的目录即可,所有的模块都不会和之前的2有联系,但是如果再安装2.7就不一样了,因为系统已经存在一个2.7的环境,所以新编译的python有可能还使用之前的库,就比如目前系统自带的版本为2.7.5,我们现在安装2.7.15,默认情况下进入新安装的交互式界面,发现版本仍然是2.7.5,还是原来的,原因就是lib重用了,这种情况只需要在编译的时候指定一下参数就可以解决了,下面详细说一下安装过程.

另外注明一下,一般是不推荐安装python 2.x的,我们这里安装时为了在某些特殊情况下需要使用过时的接口而专门安装的,比如我这里会报错undefined symbol: PyUnicodeUCS2_Format,也就是不支持过时的ucs2编码,所以为了不影响现有的系统,才选择重新编译2.7来兼容这个问题;如果项目不存在这些兼容问题,那么推荐使用python 3.

首先安装的包是:Python-2.7.15.tar.xz,即将安装到的目录为:/monchickey/python27

首先解压包:

tar -xJvf Python-2.7..tar.xz
cd Python-2.7./

然后建立一下lib目录,否则待会configure会出错,这个是和之前不一样的地方

mkdir -p /monchickey/python27/lib

安装之前可以确认一下相关的包是否安装,一般情况下都是安装的了,使用yum安装如下:

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

然后开始编译和安装:

./configure --prefix=/monchickey/python27 --enable-shared --enable-unicode=ucs2 LDFLAGS="-Wl,-rpath /monchickey/python27/lib"
make -j4
make install

在执行configure的时候,--enable-shared参数一定要指定,LDFLAGS这个参数很关键就是指定编译的lib目录使用我们自定义的目录,如果不加就使用系统的了,最后--enable-unicode是根据需要指定ucs2还是ucs4的编码对齐方式,在系统自带的python2.7或者python3中都是使用的ucs4编码方式,这里就是为了解决上面所说的那个错误而指定的,这个参数或者其他参数根据你实际的项目需要指定,不需要的话直接去掉即可,但是另外两个参数一定要加.

现在python 2.7.15独立环境就安装完毕了,直接调用新的安装目录下的python使用即可.

centos 7下独立的python 2.7环境安装的更多相关文章

  1. centos 7下Hadoop 2.7.2 伪分布式安装

    centos 7 下Hadoop 2.7.2 伪分布式安装,安装jdk,免密匙登录,配置mapreduce,配置YARN.详细步骤如下: 1.0 安装JDK 1.1 查看是否安装了openjdk [l ...

  2. python新手之一环境安装

    今天开始学习python,首先环境安装 1.在https://www.python.org/downloads/下载python2.X或者3.X(ps:这里建议下载32位的python ,因为64位p ...

  3. python学习笔记1之-python简介及其环境安装

    python学习笔记之-python简介及其环境安装 最近几年python之火不用多说,最近开始利用时间自学python,在学习的过程中,按照自己的思路和理解记录下学习的过程,并分享出来,如果正好你也 ...

  4. [原创]win7环境下搭建eclipse+python+django开发环境

    一)工具下载 a)eclipse(最新版4.3.1)官网下载地址 http://www.eclipse.org/downloads/ b)python (2.X版本)官网下载地址 http://pyt ...

  5. windows下多个python版本共存 及安装Django

    了解python的人都知道python有2.x版本和3.x版本,而python3.x版本不向下兼容,但是根据具体的需要,有时候要2.x和3.x共存,python共存本身没有问题,只是需要设置一些环境变 ...

  6. Python系列:一、Python概述与环境安装--技术流ken

    Python简介 Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项 ...

  7. selenium+python自动化之环境安装

    一.Python安装 1.操作系统:win7 64位系统 2.下载Python安装包,选择2.7版本和3.6版本都可以(最好安装2.7版本稳定)官网下载地址:https://www.python.or ...

  8. python+selenium自动化测试环境安装

    因为自己安装自动化测试环境时,遇到过许多问题,自己整理了一下安装的步骤,感谢那些帮助过我的人. 1.安装python,我装的是3.5版本,网络上也有许多安装步骤,照着就可以了(其实一直下一步也行) 不 ...

  9. Python简介及环境安装

    Python 官网传送门 Python是一种面向对象的解释性计算机程序设计语言. Python 2.7将于2020年1月1日终止支持,本笔记基于Python3. pip pip 是一个现代的,通用的 ...

随机推荐

  1. liunx rm 命令修改

    原文:https://blog.csdn.net/Ace_Shiyuan/article/details/60139791 1.打开一个终端,输入命令:vim ~/.bashrc Linux下修改rm ...

  2. (八)CXF添加自定义拦截器

    前面我们说到CXF添加内置的拦截器,今天的话,我们来讲下如何添加自定义拦截器: 我们的实例是客户端访问服务端webservice接口要加权限认证. 我们思路先说下.我们可以通过在SOAP消息的Head ...

  3. equals&&==的使用

    package stringyiwen; /* * ==:比较运算符,在基本数据类型比较的是值* ==:引用数据类型比较的是地址值 *//* * equals方法:[只]用于[引用数据数据类型],如果 ...

  4. java判断给定路径或URL下的文件或文件夹是否存在?

    if (file.exists()) { 来判断这是不是一个文件. file.isDirectory() 来判断这是不是一个文件夹. 1.File testFile = new File(testFi ...

  5. python全栈开发day36-IO多路复用

    一.复习 1.进程.线程.协程 进程:是计算机中最小的资源分配单位,数据隔离,可以利用多核,数据不安全 线程:是计算机中最小的CPU调度单位,数据共享,GIL,数据不安全 协程:是线程的一部分,是由用 ...

  6. python多进程和多线程

    多任务才有多进程和线程: 线程是最小的执行单元,而进程由至少一个线程组成.如何调度进程和线程,完全由操作系统决定,程序自己不能决定什么时候执行,执行多长时间. 多进程和多线程的程序涉及到同步.数据共享 ...

  7. 6-5 巡逻机器人 uva1600

    一开始按照标准bfs来写  标记为二维数组 后来按照三维数组写过了    ps大部分bfs都不会是二维数组搞定!!! 其中有一个bug弄了半个小时... 一开始我是先判断!vis[x][y][v.c] ...

  8. 域名解析到Nginx服务器项目上

    第一步:先将域名解析到 IP 上 解析完后,如下 第二步:Nginx服务器配置servername 修改 /usr/local/nginx/conf/nginx.conf (你的配置文件可能不在这个目 ...

  9. <script type="text/x-template"> 模板

    获取动态的js模板可以用art-template插件 <script type="text/template"> 给<script>设置type=" ...

  10. 启用mysql的sql日志

    在mysql命令行或者客户端管理工具中执行:SHOW VARIABLES LIKE "general_log%"; 结果: general_log OFFgeneral_log_f ...