1

所以我在这里按照这些说明安装 Oracle InstantClient,

在 Mac OS/X 上安装 Oracle Instantclient 而不设置环境变量?

但是当我尝试安装 cx_oracle 时,我得到以下堆栈跟踪,

python setup.py build
running build 
running build_ext
building 'cx_Oracle' extension
creating build
creating build/temp.macosx-10.6-universal-2.6-10g
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -arch x86_64 -pipe -I/usr -I/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6 -c cx_Oracle.c -o build/temp.macosx-10.6-universal-2.6-10g/cx_Oracle.o -DBUILD_VERSION=5.1.1
creating build/lib.macosx-10.6-universal-2.6-10g
gcc-4.2 -Wl,-F. -bundle -undefined dynamic_lookup -arch i386 -arch ppc -arch x86_64 build/temp.macosx-10.6-universal-2.6-10g/cx_Oracle.o -L/usr/lib -lclntsh -o build/lib.macosx-10.6-universal-2.6-10g/cx_Oracle.so -shared-libgcc
ld: library not found for -lclntsh
collect2: ld returned 1 exit status
ld: library not found for -lclntsh
collect2: ld returned 1 exit status
ld: library not found for -lclntsh
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/5Q/5QMpI35VGumn0wxJwdndr-r4BJ+/-Tmp-//ccG0USbB.out (No such file or directory)
error: command 'gcc-4.2' failed with exit status 1

我在这里做错了什么?当我安装 InstantClient 时,我错过了什么吗?

复制的库列表

bnnz10.dylib 
libociei.dylib 
libsqlplusic.dylib 
libclntsh.dylib.10.1 
libocci.dylib.10.1 
libocijdbc10.dylib 
libsqlplus.dylib
4

1 回答 1

13

您没有 clntsh 库可以链接

要解决此问题,您需要在 /usr/lib 中将 libclntsh.dylib.10.1 链接到 libclntsh.dylib 并将 libocci.dylib.10.1 链接到 libocci.dylib

请注意,我没有 oracle 库,因此无法确认这是否足够。

于 2011-12-20T18:23:48.540 回答