2012-01-24 4 views
1

Я строил систему 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? Пожалуйста, помогите, прежде чем я застрелю себя.

ответ

1

Что-то перечисляет libnnz10.so как библиотеку (как вы уже догадались). Чтобы найти ее, запустите 'ldd' против библиотек, которые вы включаете, продолжайте делать это, пока не выясните, что нужно libnnz10.so.

+0

Вы правы, я связываюсь с libclntsh.so, и для этой библиотеки требуется libnnz.so. Но обе эти библиотеки находятся в /databases/oracle10.2.0_64BIT/lib, и этот каталог есть в моей переменной $ SHLIB_PATH. Тогда почему он не может загрузить libnnz.so? –

+0

Вы не указываете -L/databases/oracle10.2.0_64BIT/lib компилятору. SHLIB_PATH (я бы предположил, что он похож на LD_LIBRARY_PATH на Linux, или DYLD_LIBRARY_PATH на OSX) - будет сообщать только исполняющим программам, где искать библиотеки. Ваш компилятор будет смотреть только в каталогах в своем корневом каталоге sys или что вы явно скажете, чтобы он заглянул внутрь. – synthesizerpatel

Смежные вопросы