undefined reference to Db::Db() - berkeley-db
This is a discussion on undefined reference to Db::Db() - berkeley-db ; I am a newbie to the Berkeley DB . I am getting this error when I try to produce my outfile for a very simple C++ example file. Here are my steps: I am working on the latest version of ...
![]() |
| | LinkBack | Thread Tools | Display Modes |
|
#1
| |||
| |||
| produce my outfile for a very simple C++ example file. Here are my steps: I am working on the latest version of RedHat; I did the following to build the DB on my laptop: From build_unix dir I did [root@localhost build_unix]# make realclean [root@localhost build_unix]# ../dist/configure --enable-cxx [root@localhost build_unix]# make [root@localhost build_unix]# make install Here is my Berkeley Dir file listings: /usr/local/BerkeleyDB.4.4/bin db_archive db_deadlock db_hotbackup db_printlog db_stat db_verify db_checkpoint db_dump db_load db_recover db_upgrade /usr/local/BerkeleyDB.4.4/include db_cxx.h db.h /usr/local/BerkeleyDB.4.4/lib libdb-4.4.a libdb-4.4.so libdb.a libdb-4.4.la libdb-4.so libdb.so libdb_cxx-4.so libdb_cxx.so libdb_cxx-4.4.la libdb_cxx-4.4.a libdb_cxx-4.4.so libdb_cxx.a Here is my program: #include using namespace std; int main(){ Db(NULL,0); return (0); } Here are the commands I ran: [root@localhost mydb]# g++ -c -I/usr/local/BerkeleyDB.4.4/include/ SearchThread.cpp [no problem] [root@localhost mydb]# g++ -o ciboreqt SearchThread.o -L/usr/local/BerkeleyDB.4.4/lib/ HERE IS THE OUTPUT W/ ERRORS: SearchThread.o(.text+0x28): In function `main': SearchThread.cpp: undefined reference to `Db: b(DbEnv*, unsigned int)'SearchThread.o(.text+0x37):SearchThread.cpp: undefined reference to `Db::~Db()' collect2: ld returned 1 exit status [root@localhost mydb]# The program is so simple and the concept is the same as any other program, that I don't understand what the problem is with the linker. PLEASE HELP |
|
#2
| |||
| |||
|
Try something like: -L/usr/local/BerkeleyDB.4.4/lib/ -ldb_cxx-4.4 Ron |
|
#3
| |||
| |||
|
That worked, however, when I execute my outfile it gives me the error ../cibyre : error while loading shared libraries: libdb_cxx-4.4.so: cannot open shared object file: No such file or directory Any ideas on this one? |
|
#4
| |||
| |||
|
You can add the lib directory to the LD_LIBRARY_PATH environment variable, let the system know where to find dynamic library files. However, is there a way to statically link with C++ support? |
![]() |
« Previous Thread
|
Next Thread »
| Thread Tools | |
| Display Modes | |
| |
All times are GMT -4. The time now is 09:36 AM.



b(DbEnv*, unsigned int)'
Linear Mode