Archived

This forum has been archived. Please start a new discussion on GitHub.

cannot find -ldb_cxx on RHEL

Hi All,

I have searched the forums about this (http://www.zeroc.com/vbulletin/showthread.php?t=1410&highlight=db_cxx) but still it's not fixed!

I am positive I have configured everything correctly yet ld complains that db_cxx doesn't exist even though it definitely does. See below:
c++ -shared -Wl,--enable-new-dtags -Wl,-rpath,/usr/local/Ice-3.0.1/lib
-ftemplate-depth-128 -Wall -D_REENTRANT -fPIC -g -L../../lib -o ../../lib/libFreeze.so.3.0.1 -Wl,-h,libFreeze.so.30   CatalogData.o Catalog.o
ConnectionF.o ConnectionI.o Connection.o DB.o EvictorF.o EvictorI.o EvictorIteratorI.o Evictor.o EvictorStorage.o Exception.o IndexI.o Index.o
MapI.o ObjectStore.o PingObject.o SharedDbEnv.o SharedDb.o TransactionHolder.o TransactionI.o Transaction.o Util.o -lIce -lIceUtil
-L/usr/local/BerkelyDB.4.3/lib -ldb_cxx-4.3 -lpthread
/usr/bin/ld: cannot find -ldb_cxx-4.3
collect2: ld returned 1 exit status
make[2]: *** [../../lib/libFreeze.so.3.0.1] Error 1
make[2]: Leaving directory `/usr/local/src/Ice-3.0.1/src/Freeze'
make[1]: *** [all] Error 1
make[1]: Leaving directory `/usr/local/src/Ice-3.0.1/src'
make: *** [all] Error 1
[root@tcislinux Ice-3.0.1]# ls /usr/local/BerkeleyDB.4.3/lib/
libdb-4.3.a   libdb-4.3.so  libdb.a          libdb_cxx-4.3.la  libdb_cxx-4.so  libdb_cxx.so
libdb-4.3.la  libdb-4.so    libdb_cxx-4.3.a  libdb_cxx-4.3.so  libdb_cxx.a     libdb.so
[root@tcislinux Ice-3.0.1]#

As you can see, I have followed advice from previous posts on the forum and changed the references to -ldb_cxx in config/Make.rules to -ldb_cxx.4.3 but it still doesn't work. This is frustrating because the file does exist and Ice is correctly configured to point to it!

Comments

  • Sorry, I fogot to mention I have tried changing name of the library from -ldb_cxx to -ldb_ccx.4 and various other variations in order to point to the correct so file but it still doesn't work!
  • marc
    marc Florida
    Just as a wild guess, perhaps your gcc doesn't like the ordering of the parameters? Try to move the -L/usr/local/BerkelyDB.4.3/lib -ldb_cxx-4.3 to the beginning of the link line.
  • benoit
    benoit Rennes, France
    It also looks like you have a typo in your BerkeleyDB directory ("-L/usr/local/BerkelyDB.4.3/lib"). "Berkely" should probably be "Berkeley" instead.

    Benoit.
  • benoit wrote:
    It also looks like you have a typo in your BerkeleyDB directory ("-L/usr/local/BerkelyDB.4.3/lib"). "Berkely" should probably be "Berkeley" instead.

    Benoit.

    :o:o:o:o:o:o:o Damn it! Thankyou, you're right. Sorry for wasting your time :o:o:o