PDA

View Full Version : db3 bomb during compile



tigerknight
10-10-2003, 11:21 AM
I'm trying to get the itemdata.db function to work, and I'd made decent progress since my previous issue with it until I hit this one. BTW before someone gives a rtfm response, I searched both here and google for the error message and came up blank. Thanks in advance, I appreciate the work everyone is doing on this project :]


I'm running debian on a 2.4.20 kernel, and have the following packages installed:

altaica:~/seq/showeq# dpkg -l|grep Berkeley
ii libberkeleydb- 0.17-1 Use Berkeley DB 3 databases from Perl
ii libdb1-compat 2.1.3-7 The Berkeley database routines [glibc 2.0/2.
ii libdb2 2.7.7.0-7 The Berkeley database routines (run-time fil
ii libdb3 3.2.9-16 Berkeley v3 Database Libraries [runtime]
ii libdb3++ 3.2.9-16 Berkeley v3 Database Libraries for C++ [runt
ii libdb3++-dev 3.2.9-16 Berkeley v3 Database Libraries for C++ [deve
ii libdb3-dev 3.2.9-16 Berkeley v3 Database Libraries [development]
ii libdb3-util 3.2.9-16 Berkeley v3 Database Utilities


Here's my configure output (./configure --with-db3) starting with the db3 line, then followed by the make command and bomb. Anyone have ideas?

checking whether to build with Berkeley DB3... yes
checking db_cxx.h usability... yes
checking db_cxx.h presence... yes
checking for db_cxx.h... yes
checking for DbEnv::version in -ldb_cxx... no
checking whether to build for use with the test server... no
checking for rpath... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating maps/Makefile
config.status: creating conf/Makefile
config.status: creating conf.h
config.status: executing default-1 commands
Success!
Please run:
make

altaica:~/seq/showeq# make
make all-recursive
make[1]: Entering directory `/root/seq/showeq'
Making all in maps
make[2]: Entering directory `/root/seq/showeq/maps'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/seq/showeq/maps'
Making all in src
make[2]: Entering directory `/root/seq/showeq/src'
g++-3.0 -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/qt/include -I/usr/X11R6/include -DMAPDIR=\"/usr/local/share/showeq\" -DLOGDIR=\"/usr/local/share/showeq\" -I/usr/include/pcap -D_REENTRANT -O2 -Wall -g -ggdb -DDEBUG -finline-functions -DQT_THREAD_SUPPORT=1 -DDISPLAY_ICONS=false -DICON_DIR=\"/eq-icons/\" -c main.cpp
main.cpp: In function `void displayVersion()':
main.cpp:840: `GDBMConvenience' undeclared (first use this function)
main.cpp:840: (Each undeclared identifier is reported only once for each
function it appears in.)
main.cpp:840: parse error before `::' token
make[2]: *** [main.o] Error 1
make[2]: Leaving directory `/root/seq/showeq/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/seq/showeq'
make: *** [all-recursive-am] Error 2

fryfrog
10-10-2003, 04:05 PM
Looks like its puking out on QT and not on DB3. Can you compile w/o the --with-db3 option? Is QT 3.x and compiled with gcc3?

tigerknight
10-10-2003, 04:14 PM
Yep - compiles just fine without the '--with-db3' switch.

I've got QT 3.0.5, gcc-3.0 and g++-3.0. I've had successful compiles with showeq for all recent versions except when I try to use the db3 capability and then I have problems - this is just the farthest I've gotten before with this particular issue. It will work fine if I don't try to use db3, but I'd like to have the full functionality.

Cryonic
10-10-2003, 04:20 PM
I don't use any flags with ./configure and I'm getting the item databases just fine on my system.

tigerknight
10-10-2003, 04:34 PM
without the --with-db3 flag I get the following in my configure output:

checking for gdImagePng in -lgd... no
checking for inflate in -lz... yes
checking for gdbm_open in -lgdbm... yes
checking how to run the C++ preprocessor... g++-3.0 -E
checking for ANSI C header files... (cached) yes

and this in the make output:

/bin/sh ../mkinstalldirs /usr/local/bin
/bin/sh ../libtool --mode=install /usr/bin/install -c showeq /usr/local/bin/showeq
/usr/bin/install -c showeq /usr/local/bin/showeq
/bin/sh ../libtool --mode=install /usr/bin/install -c showeqitemdbtool /usr/local/bin/showeqitemdbtool
/usr/bin/install -c showeqitemdbtool /usr/local/bin/showeqitemdbtool
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/seq/showeq/src'

But I still don't see an itemdata.db. Mind you - I haven't had the chance to get home, fire this up, and start a session - so if the file gets created at time of showeq running then I'm obviously behind the ball.

What do my make/configure outputs suggest to those more familiar with this function of showeq?

Cryonic
10-10-2003, 08:14 PM
The file isn't made until if tries to log stuff for the first time.

tigerknight
10-10-2003, 09:14 PM
Damnit - it never picked up gdbm before, but apparently it did on this build just fine. So doing it with no '--with-db3' actually came up with a proper setup and such.

Bust my ass trying to get db3 to work and look what I get - GOOD PROGRAMMING FROM THE DEVELOPERS!! (good work guys, btw :] awsome program)

I even copied in the two .txt files to boot. One last question.. what exactly does the itemdata.db file DO? I've been getting error messages about it for ages and really just wanted it to work because it was pissing me off that I kept getting errors but now that it's working I have no clue what bells and whistles it fixed or what not..

Cryonic
10-10-2003, 10:28 PM
its purpose is to log items seen in game.