python是个好的小框架,搬来搬去都可以,通用性没的说,不废话了。
以前也没少安装过Python还有cx_Oracle,也没遇到过啥问题,很顺利的,乖乖最近拿新机器虚拟机一安装问题来了,都是各种报错,论坛里网上查,一个转一个都TM的看着累死,没一点用,诶
首先确认您的主机上有没有Python,确认下版本就知道,一般的Linux只要不是纯净版,上面都自带Python版本无论2.6 2.7都够用了,python -V 看见结果就算完成了。
但是部分机器没有开发包,安装下Python开发包 yum install python-devel;网络通的情况下会自己下载内容,然后就完成了。
第二步确认主机上有没有安装ORACLE #echo $ORACLE_HOME如果打出一个目录,那么恭喜你#cd $ORACLE_HOME进去看一下,看看是客户端简版还是服务版,特别检查$ORACLE_HOME/sdk/include目录是否存在,还有lib、bin目录,检查要是都在的话执行下sqlplus如果看见输入用户名的提示符,那么恭喜你,你可以直接解压cx_Oracle(4-5版本都可以),解压完成 python setup.py install 直接执行完,python import cx_Oracle没有报错提示,就算装完成了。
至于GCC没有就自己安装吧,这个不算是问题。
下面我来说一下我这里遇到的报错情况
python setup.py install
running install
running build
running build_ext
building 'cx_Oracle' extension
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/lib/oracle/11.2/client64/rdbms/demo -I/usr/lib/oracle/11.2/client64/rdbms/public -I/usr/lib/oracle/11.2/client64/network/public -I/usr/lib/oracle/11.2/client64/sdk/include -I/usr/local/include/python2.7 -c cx_Oracle.c -o build/temp.linux-x86_64-2.7/cx_Oracle.o -DBUILD_TIME="June 21, 2017 18:42:39"
cx_Oracle.c:9:17: error: oci.h: No such file or directory
cx_Oracle.c:10:16: error: xa.h: No such file or directory
In file included from cx_Oracle.c:74:
Environment.c:11: error: expected specifier-qualifier-list before ‘OCIEnv’
Environment.c:22: error: expected declaration specifiers or ‘...’ before ‘sword’
In file included from Environment.c:53,
from cx_Oracle.c:74:
Error.c:11: error: expected specifier-qualifier-list before ‘sb4’
Error.c:28: error: ‘udt_Error’ has no member named ‘errorNumber’
Error.c:29: error: ‘udt_Error’ has no member named ‘errorText’
Error.c:30: error: ‘udt_Error’ has no member named ‘context’
Error.c: In function ‘Error_New’:
Error.c:82: error: ‘ub4’ undeclared (first use in this function)
Error.c:82: error: (Each undeclared identifier is reported only once
Error.c:82: error: for each function it appears in.)