Linker 图书馆依赖不知从何而来

Linker 图书馆依赖不知从何而来,linker,Linker,我正在构建一个HP-UX ia64系统。在构建过程中,我遇到了一个错误 ld: Can't find dependent library "libnnz10.so" 在我的makefile中,没有任何地方可以链接到此库。该库位于目录/databases/oracle10.2.0_64BIT/lib中。我有两个源文件ora8ibulk.cpp和ora8idplinit.cpp。生成期间发出的命令如下所示: aCC -DUSE_NEW_IOSTREAMS -AA -mt -z -ext +w -W

我正在构建一个HP-UX ia64系统。在构建过程中,我遇到了一个错误

ld: Can't find dependent library "libnnz10.so"
在我的makefile中,没有任何地方可以链接到此库。该库位于目录/databases/oracle10.2.0_64BIT/lib中。我有两个源文件ora8ibulk.cpp和ora8idplinit.cpp。生成期间发出的命令如下所示:

aCC -DUSE_NEW_IOSTREAMS -AA -mt -z -ext +w -Wc,-ansi_for_scope,on +W302 +W392 +We400 +W2009 +W2193 +W2261 +W4227 +W4255  -DACE_HAS_THREADS -D_POSIX_C_SOURCE=199506L -DHPUX_VERS=1100 -DACE_LACKS_PRAGMA_ONCE +DD64 +DSitanium2 +O2 +Ofltacc  +DD64 +DSitanium2  -DPM_64BIT -DFD_SETSIZE=60000 -D__ACE_INLINE__ -DRW_NO_STL -DRW_NO_BOOL -DINFA_PREFIX -DUNIX -DHPUX_IPF -I. -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/rdbms/demo -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/rdbms/public -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/network/public -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/plsql/public -I/export/home/builds/Debug_9.5.0/mercury/ws/platform/dbadapters/src/pmorabulk/include -I/export/home/builds/Debug_9.5.0/mercury/ws/platform/dbadapters/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/base/409/HP-UX.IPF.64-DEVEL/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/cmnutils/409/HP-UX.IPF.64-DEVEL/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/ICU/3.2.1_D/HP-UX.IPF.64/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/ACE/5.4.7_B/HP-UX.IPF.64 -I/export/home/builds/Debug_9.5.0/mercury/native/default/STLPORT_INCLUDE/4.6.2_A/HP-UX.IPF.64 -I/export/home/builds/Debug_9.5.0/mercury/native/default/STLPORT_INCLUDE/4.6.2_A/HP-UX.IPF.64/stlport -I/opt/aCC/include/iostream \
    -c /export/home/builds/Debug_9.5.0/mercury/ws/platform/dbadapters/src/pmorabulk/ora8ibulk.cpp -o ../../target/pmorabulk/tmp/HP-UX.IPF.64.r/ora8ibulk.o

aCC -DUSE_NEW_IOSTREAMS -AA -mt -z -ext +w -Wc,-ansi_for_scope,on +W302 +W392 +We400 +W2009 +W2193 +W2261 +W4227 +W4255  -DACE_HAS_THREADS -D_POSIX_C_SOURCE=199506L -DHPUX_VERS=1100 -DACE_LACKS_PRAGMA_ONCE +DD64 +DSitanium2 +O2 +Ofltacc  +DD64 +DSitanium2  -DPM_64BIT -DFD_SETSIZE=60000 -D__ACE_INLINE__ -DRW_NO_STL -DRW_NO_BOOL -DINFA_PREFIX -DUNIX -DHPUX_IPF -I. -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/rdbms/demo -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/rdbms/public -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/network/public -I/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/plsql/public -I/export/home/builds/Debug_9.5.0/mercury/ws/platform/dbadapters/src/pmorabulk/include -I/export/home/builds/Debug_9.5.0/mercury/ws/platform/dbadapters/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/base/409/HP-UX.IPF.64-DEVEL/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/cmnutils/409/HP-UX.IPF.64-DEVEL/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/ICU/3.2.1_D/HP-UX.IPF.64/include -I/export/home/builds/Debug_9.5.0/mercury/native/default/ACE/5.4.7_B/HP-UX.IPF.64 -I/export/home/builds/Debug_9.5.0/mercury/native/default/STLPORT_INCLUDE/4.6.2_A/HP-UX.IPF.64 -I/export/home/builds/Debug_9.5.0/mercury/native/default/STLPORT_INCLUDE/4.6.2_A/HP-UX.IPF.64/stlport -I/opt/aCC/include/iostream \
    -c /export/home/builds/Debug_9.5.0/mercury/ws/platform/dbadapters/src/pmorabulk/ora8idplinit.cpp -o ../../target/pmorabulk/tmp/HP-UX.IPF.64.r/ora8idplinit.o

aCC  +DD64 +DSitanium2 -b -Wl,+s -z -mt  ../../target/pmorabulk/tmp/HP-UX.IPF.64.r/ora8ibulk.o ../../target/pmorabulk/tmp/HP-UX.IPF.64.r/ora8idplinit.o \
         -o ../../target/bin/HP-UX.IPF.64.r/libpmorablk.sl \
         -L/export/home/builds/Debug_9.5.0/mercury/native/default/ORACLE/10.1_A/HP-UX.IPF.64/lib -lclntsh \

ld: Can't find dependent library "libnnz10.so"

这种对libnnz10.so的依赖从何而来?在我开枪之前请帮忙。

有些东西列出了libnnz10.so作为一个库(正如你所猜测的)。。要找到它,请对包含的库运行'ldd',继续这样做,直到找到需要libnnz10的内容。因此。

有些东西将libnnz10列为一个库(如您所猜测的)。。要找到它,请对包含的库运行'ldd',继续运行,直到找到需要libnnz10的库。

你说得对,我正在链接libclntsh.so,而这个库需要libnnz.so。但是这两个库都可以在/databases/oracle10.2.0_64BIT/lib中找到,这个目录在我的$SHLIB_路径变量中。那么为什么它不能加载libnnz.so呢?您没有为编译器指定-L/databases/oracle10.2.0_64BIT/lib。SHLIB_路径(我认为类似于Linux上的LD_LIBRARY_路径,或者OSX上的DYLD_LIBRARY_路径)——只会告诉执行程序在哪里查找库。您的编译器将只查找其sys root目录中的目录,或者您显式地告诉它查找。您是对的,我正在链接libclntsh.so,而此库需要libnnz.so。但是这两个库都可以在/databases/oracle10.2.0_64BIT/lib中找到,这个目录在我的$SHLIB_路径变量中。那么为什么它不能加载libnnz.so呢?您没有为编译器指定-L/databases/oracle10.2.0_64BIT/lib。SHLIB_路径(我认为类似于Linux上的LD_LIBRARY_路径,或者OSX上的DYLD_LIBRARY_路径)——只会告诉执行程序在哪里查找库。编译器将只查找其sys根目录中的目录,或者您显式告诉它要查找的目录。