본문 바로가기

Engineering/DB

db2 라이브러리를 포함한 프로그램 make 시 에러 발생

728x90
 db2 라이브러리(-ldb2) 를 포함시킨 프로젝트에서 라이브러리와 헤더파일위치를 정확히 맞췄는데도 다음과 같은 에러가 발생하였습니다.

/usr/bin/ld: warning: libdb2install.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try                      using -rpath or -rpath-link)

/usr/bin/ld: warning: libdb2g11n.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try us                     ing -rpath or -rpath-link)

/usr/bin/ld: warning: libdb2locale.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try                      using -rpath or -rpath-link)

/usr/bin/ld: warning: libdb2osse.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try us                     ing -rpath or -rpath-link)

/usr/bin/ld: warning: libdb2genreg.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try                      using -rpath or -rpath-link)

/usr/bin/ld: warning: libdb2trcapi.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try                      using -rpath or -rpath-link)

/usr/bin/ld: warning: libdb2dascmn.so.1, needed by /home/AAAA/lib/db2/libdb2.so, not found (try                      using -rpath or -rpath-link)

/usr/bin/ld: warning: libstdc++.so.5, needed by /home/AAAA/lib/db2/libdb2.so, may conflict with                      libstdc++.so.6

/home/AAAA/lib/db2/libdb2.so: undefined reference to `ossLogRC'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `sqlnlssplitcp2'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `sqlnlsFormatDate'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `g_pGTCB'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `OSSHFile::read(OSSFileReadParam const*, vo                     id*, unsigned long*)'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `ossComputeMontgomeryInverse32'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `sqlnlsschr'

/home/AAAA/lib/db2/libdb2.so: undefined reference to `gtraceEnable'


  이런 경우에는 Makefile 에서 db2 라이브러리 링크하는 부분에 다음과 같이 (-rpath) 를 추가합니다.
 

DB2App_LDADD = \

    -L$(LIB_DIR) \

    -lchakra \

    -lcfgfile \

    -lmcrypt \

    -lmiscutil \

    -loscompatible \

    -lstar \

    -lrim \

    -looci \

    -Wl,-rpath=/home/AAAA/lib/oracle -L/home/AAAA/lib/oracle -lclntsh \

    -Wl,-rpath=/home/AAAA/lib/db2 -L/home/AAAA/lib/db2 -ldb2 \