求助:oracle oci OCIEnvCreate 崩溃
linux 上面安装了install client,根据网上的配置,也做了配置,但是写的例子城西,第一个OCI函数OCIEnvCreate直接运行崩溃。
install client安装了zip版的basic sdk sqlplus
install client 安装目录:
[root@app-node-V-G instantclient_11_2]# pwd
/usr/local/oracle/instantclient_11_2
运行的库(lib sqlplus直接在当前目录,include在sdk目录,tns文件在netwrok/admin目录):
[root@app-node-V-G instantclient_11_2]# ls
adrci glogin.sql libnnz11.so libocijdbc11.so NETWORK sdk xstreams.jar
BASIC_README libclntsh.so libocci.so.11.1 libsqlplusic.so ojdbc5.jar sqlplus
genezi libclntsh.so.11.1 libociei.so libsqlplus.so ojdbc6.jar SQLPLUS_README
库文件已经配置到/etc/ld.so.conf文件中,测试例子编译连接都没有问题
配置的oracle_home等变量,在/etc/profile中,环境变量已经生效
export ORACLE_SID=primdb
export ORACLE_HOME=/usr/local/oracle/instantclient_11_2
export TNS_ADMIN=$ORACLE_HOME/NETWORK/ADMIN
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME
export SQLPATH=$ORACLE_HOME
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=$PATH:$ORACLE_HOME
调用的例子程序:
OCIEnvCreate(&m_pEnv, OCI_DEFAULT, NULL, NULL, NULL, NULL, 0, NULL);
直接调用这一句报段错误。
66 OCIEnvCreate(&m_pEnv, OCI_THREADED|OCI_EVENTS|OCI_OBJECT|OCI_NCHAR_LITERAL_REPLACE_ON, NULL, NULL, NULL, NULL, 0, NULL);
(gdb)
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff791f0b3 in kpedbgevpec () from /usr/local/oracle/instantclient_11_2/libclntsh.so.11.1
怀疑是install client的配置可能还有问题。从网上找的配置,基本都尝试了,还是报这个错误,不知道怎么解决了。