1
私はHP-UX ia64システム上に構築しています。ビルド中にエラーが発生しましたライブラリ依存関係がどこからも出てこない
ld: Can't find dependent library "libnnz10.so"
私のメイクファイルはどこにもありません。このライブラリは/databases/oracle10.2.0_64BIT/libディレクトリにあります。私は2つのソースファイルora8ibulk.cppとora8idplinit.cppを持っています。ビルド時に発行されたコマンドは、この依存性はlibnnz10.soで来るにいどこから
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"
ですか?私が自分を撃つ前に助けてください。
あなたはそうです、私はlibclntsh.soとリンクしています。このライブラリにはlibnnz.soが必要です。しかし、これらのライブラリは両方とも/databases/oracle10.2.0_64BIT/libにあり、このディレクトリは$ SHLIB_PATH変数にあります。では、なぜlibnnz.soをロードできないのですか? –
-L/databases/oracle10.2.0_64BIT/libをコンパイラに指定していません。 SHLIB_PATH(LinuxではLD_LIBRARY_PATH、OSXではDYLD_LIBRARY_PATHに似ています)は、実行中のプログラムにライブラリの検索場所のみを指示します。あなたのコンパイラはsysルート内のディレクトリだけを見るか、明示的に調べるよう指示します。 – synthesizerpatel