1.安装python2.7.3
下载地址:http://hpux.connect.org.uk/

swinstall -s /home/aaa/python-2.7.3-ia64-11.31.depot

在出现的界面中按空格选中python-2.7.3,执行action菜单中的install.
如果安装后执行python,提示缺少库,也用此方法下载安装。

此站下载的python-2.7.3是32位版本,使用以下代码可判定:

import struct
print struct.calcsize("P")

import platform
platform.architecture()

2.使用源码编译安装cx_Oracle
下载地址:http://sourceforge.net/projects/cx-oracle/
因为python-2.7.3是32位版本,这里的cx_Oracle也只能编译为32位版本。

2.1 修改setup.py
84行-87行改为:

if struct.calcsize("P") == 4:
 subDirs = ["lib32"]
else:
 subDirs = ["lib64"]

106到161行:

libDirs = [oracleLibDir,"/usr/local/lib/hpux32"]
libs = ["clntsh","ttsh10"]

2.2 执行编译命令

python setup.py build

注意,此时build生成的cx_Oracle.so仍是不能正常使用的。
将屏幕输出的编译命令复制下来,把cc改为aCC,删除掉已经生成的文件,执行刚才复制的命令,即可得到正常的cx_Oracle.so。

下面是改之后的编译命令:

aCC -Ae +Onolimit -O \
-I/usr/local/include \
-I/usr/local/include/ncurses \
-I/usr/local/lib/hpux32/libffi-3.0.11/include \
-DNDEBUG -O +z \
-I/opt/oracle/product/10.2.0/rdbms/demo \
-I/opt/oracle/product/10.2.0/rdbms/public \
-I/usr/local/include/python2.7 \
-c cx_Oracle.c \
-o cx_Oracle.o \
-DBUILD_VERSION=5.1.2

aCC -Ae -b -s +Onoprocelim cx_Oracle.o \
-L/opt/oracle/product/10.2.0/lib32 \
-L/usr/local/lib/hpux32 \
-lclntsh -lttsh10 -lpython2.7 \
-o cx_Oracle.so

2.3 安装cx_Oracle
手工放在PATH变量能找到的位置,或者是/usr/local/lib/python2.7/site-packages目录下都可以。
注:本文使用的版本是cx_Oracle-5.1.2,其他版本可能略有不同。
 


本文链接地址: 在HP-UX 11.31 IA64上安装python2.7.3和cx_Oracle
http://qingfengju.com/index.asp?id=334

分类:脚本编程 查看次数:6507 发布时间:2013-6-26 17:01:50