Python2.7 源码编译并集成第三方python模块

由于redhat5的python版本比较低,很多新的第三方python包及新功能都无法使用,所以需要升级系统自带python版本,打算升级到python2.7.4,并集成进去一些业务常用的第三方模块。

python安装

1    源码下载

在官网下载Python-2.7.4.tgz

2    源码安装,安装目录/opt/programs/python_2.7.4

tar zxvf Python-2.7.4.tgz
cd Python-2.7.4
./configure --prefix=/opt/programs/python_2.7.4
make
make install
ln -s /opt/programs/python_2.7.4/bin/python2.7  /usr/bin/python2.7

这样在/opt/programs/python_2.7.4目录下已经安装python2.7了

3    安装MySQL-python第三方模块

wget ‘http://nchc.dl.sourceforge.net/project/mysql-python/mysql-python-test/1.2.4b4/MySQL-python-1.2.4b4.tar.gz‘
tar zxvf MySQL-python-1.2.4b4.tar.gz
cd MySQL-python-1.2.4b4
python2.7 setup.py build

进行到第四步的时候,报错如下

原因是在源码编译python2.7的时候,没有打开SSL选项,修改python2.7源码目录的Python-2.7.4/Modules/Setup.dist文件,然后重新源码编译python2.7

#取消下面四行的注视
SSL=/usr/local/ssl
_ssl _ssl.c         -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl         -L$(SSL)/lib -lssl -lcrypto

重新编译python2.7,参照第2步骤

在编译主机上需要安装mysql-devel包

yum install mysql-devel

再次编译安装mysql-python模块到/opt/programs/python2.7.4目录,因为是要集成在python2.7中的

cd MySQL-python-1.2.4b4
python2.7 setup.py build
python2.7 setup.py install --prefix=/opt/programs/python_2.7.4/

验证

4    安装cx-Oracle第三方模块

wget ‘https://pypi.python.org/packages/source/c/cx_Oracle/cx_Oracle-5.1.3.tar.gz#md5=cd6ff16559cbc9c20087ec812c7092ab‘
tar zxvf cx_Oracle-5.1.3.tar.gz
cd cx_Oracle-5.1.3
python2.7 setup.py build

进行到第四步的时候,报错如下

找不到本地oracle,查阅相关资料后,才知道在编译cx_Oracle的时候,会在本地搜索oracle客户端lib库,如果找不到就不报如上错误,那就只能先安装oracle客户端了,还好oracle官网有rpm包,下载下来直接安装

安装完oracle客户端之后,要在当前环境设置ORACLE_HOME环境变量,否则还是会报上面找不到软件的错误

export ORACLE_HOME=/usr/lib/oracle/11.2/client64/

再次编译安装cx-Oracle模块到/opt/programs/python2.7.4目录,因为是要集成在python2.7中的

cd cx_Oracle-5.1.3
python2.7 setup.py build
python2.7 setup.py install --prefix=/opt/programs/python_2.7.4/

看起来没啥问题了,验证一下

这神马情况,查阅一番,发现没设置LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib/

5    把/opt/programs/python2.7的目录做成rpm包,然后就可以在其他机器上安装了,不过因为加入了mysql和oracle的第三方库,所以在其他机器安装该python2.7的rpm包时也需要这些数据库的dev开发包。

时间: 2024-08-28 17:43:05

Python2.7 源码编译并集成第三方python模块的相关文章

Android源码编译apk导入第三方包报错

报错内容如下: make: *** 没有规则可以创建"out/target/common/obj/APPS/ AndroidWFS_intermediates/classes-full-debug.jar" 需要的目标"out/target/common/obj/JAVA_LIBRARIES/ core_intermediates/classes.jar". 停止. 解决方案: 将项目复制到packages/apps目录下 新建Android.mk文件 LOCAL_

【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csdn.net/shulianghan VLC 二次开发 视频教程 : http://edu.csdn.net/course/detail/355 博客总结 : -- 本博客目的 : 让 Android 开发者通过看本博客能够掌握独立移植 VLC Media Player 核心框架到自己的 app 中,

Linux下源码编译安装rpy2

R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这里主要介绍一下在没有网络的情况下,源码安装rpy2的一些方法,以作备忘. 1.python安装 $ wget https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz $ tar zvxf Python-2.7.6.tgz $ cd Pytho

【Python笔记】如何源码编译依赖LAPACK和ATLAS库的NumPy包

上篇笔记介绍了不依赖lapack和atlas库的NumPy包源码编译/安装方法,但"纯净版"的NumPy会损失性能,故本篇笔记说明如何源码编译安装依赖lapack和atlas库的NumPy包. 1. GCC版本要求 使用较新版本的GCC工具集(尽量不低于v4.7)且集成有gfortran编译器. 备注1:这里大写的"GCC"是指GNU Compiler Collection,它除包含C语言编译器gcc外,还包含很多其它语言的编译器(如g++/gfortran等) 备

ubuntu 源码编译安装最新的vim 8.0

为什么要源码编译安装VIM? 因为我要安装ycm,ycm要求vim版本为8.0 教程步骤: 1, 核对系统版本 2, 删除系统自带的vim 3, 编译安装vim 4, 检验vim的安装 1,核对系统版本 [email protected]:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04.5 LTS Release: 14.04 Codename: tr

源码编译绕过反调试

参考师弟的贴子修改的, 基本我一次就弄好了, 没有遇到啥问题, 下面我主要是补充下他的帖子 http://bbs.pediy.com/showthread.php?t=213481 一. 环境搭建 (1). 环境介绍: 手机:nexus 5 ubuntu版本:15.10 android版本:4.4.4 android源码官网(这里有很多相关的资料,基本上按照官网的来就可以编译想编译的任何版本了) http://source.android.com/source/ (2). 环境配置 配置环境得好

学习OpenCV的学习笔记系列(二)源码编译及自带样例工程

下载及安装CMake3.0.1 要自己编译OpenCV2.4.9的源码,首先,必须下载编译工具,使用的比较多的编译工具是CMake. 下面摘录一段关于CMake的介绍: CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程).他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C 特性,类似UNIX下的automake.只是 CMake 的组态档取名为 CmakeLists.txt.Cmake 并不直接建构出最终的软件,而是产生标准

Linux程序包管理之yum仓库、源码编译安装

CentOS:yum,dnf URL:ftp://172.16.0.1/pub yum是C/S架构,是rpm的前端工具,依赖于rpm存在的: 1.本地要有yun程序: 2.本地要有配置文件(配置远程服务器yum仓库或本地服务器yum仓库): 3.要有存在的文件服务器(程序包仓库即yum仓库).(也可以在本地配置服务器yum仓库): yum支持的服务器有两种:一种是ftp服务器,第二种是http服务器: yum工作简述: yum是客户端,也认为是自我独立管理的组件,需要联系远程的仓库,从仓库中下载

Ubuntu14.04 64Bit 中从源码编译安装Gtk-3.16.3

(一)从源码编译安装GTK开发环境 为了便于获取源码,截止2015-05-26的gtk相关源码的存放于网盘中: 1. 相关网址 1)GTK+ Website 2)Compiling the GTK+ libraries  Overview of GTK+ and its Libraries 2.下载和编译源码包 1)下载源码:  (版本:gtk+-3.16.3.tar.xz) 2)解压配置gtk源码 $ tar xvfJ gtk+-3.16.3.tar.xz $ cd gtk+-3.16.3/