2 Replies Latest reply: Aug 11, 2011 6:43 AM by 701567 RSS

    Linking Problem

    701567
      Recently, build process for my application that uses 2.5.16 has stopped working. I'm sure it's a missing library or something like that, but I don't know what it is.

      I use Gentoo Linux on an amd64 platform. One of their clean up commands searches the system for dependencies and if none exist removes the package. Since the Berkeley DB was added manually and the dependencies were not recognized by the system I suspect something was removed that was needed. I tried adding back the xerces-c and xqilla libraries, but this didn't help. Now they've been removed again and the error I'm getting is as follows. Do I need to run the buildall.sh script again?

      /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libicuuc.so.46, needed by /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxqilla.so, not found (try using -rpath or -rpath-link)
      /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libicudata.so.46, needed by /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxqilla.so, not found (try using -rpath or -rpath-link)
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_close_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_fromUChars_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_toUnicode_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_open_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `u_toupper_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `u_init_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `u_charType_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_getMinCharSize_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `u_foldCase_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_setSerializedToOne_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `UCNV_FROM_U_CALLBACK_STOP_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `UCNV_FROM_U_CALLBACK_SUBSTITUTE_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_openU_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_close_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_fromUnicode_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_getMaxCharSize_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_getSerializedSet_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_getSerializedRange_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_toUChars_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `ucnv_setFromUCallBack_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_serialize_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `u_tolower_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_getSerializedRangeCount_46'
      /opt/BerkeleyDB/dbxml-2.5.16/install/lib/libxerces-c.so: undefined reference to `uset_openPatternOptions_46'
      collect2: ld returned 1 exit status
      make[3]: *** [pos0] Error 1
      make[3]: Leaving directory `/home/shtarker/Dev/180pos/src'
      make[2]: *** [all-recursive] Error 1
      make[2]: Leaving directory `/home/shtarker/Dev/180pos/src'
      make[1]: *** [all-recursive] Error 1
      make[1]: Leaving directory `/home/shtarker/Dev/180pos'
      make: *** [all] Error 2


      Thanks,

      dhk
        • 1. Re: Linking Problem
          655560
          Hi,

          It seems that the environment (system libs) has been changed after you build and install DBXML 2.5.16? If yes maybe you need to re-configure and re-build the libs, since configure will detect the new system environemnt, library dependance and set internal flags automatically.

          Please use a clean package to run a clean buildall.sh, then you can compare the building process difference. If the issue still happen, please let me know. Thanks.


          Best regards,
          Rucong Zhao
          Oracle Berkeley DB XML
          • 2. Re: Linking Problem
            701567
            Running the buildall.sh seems to have fixed the problem. I didn't clean up or remove the directory first, though I'm sure that would have been better. I wanted to try running it first to see what happens and it apparently fixed the problem. Next time I do it it will be a fresh install. Thanks.