From: "Ara.T.Howard" Date: 2004-08-20T23:30:57+09:00 Subject: Re: compiling bdb On Fri, 20 Aug 2004, ts wrote: >>>>>> "A" == Ara T Howard writes: > > A> shouldn't this pick up 4.2? > > What is the content of src/mkmf.log ? looks like all the conftest.c files testing for bdb features need to be compiled with '-lpthread'... how to affect this for have_library? $LDFLAGS doesn't seem to do it... regards. -a have_library: checking for db_version() in -ldb-4.2... -------------------- no "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb-4.2 -ldl -lcrypt -lm -lc" /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_condattr_setpshared' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutexattr_destroy' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutexattr_setpshared' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutexattr_init' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutex_trylock' collect2: ld returned 1 exit status checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { db_version(); return 0; } /* end */ "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb-4.2 -ldl -lcrypt -lm -lc" conftest.c: In function `t': conftest.c:5: `db_version' undeclared (first use in this function) conftest.c:5: (Each undeclared identifier is reported only once conftest.c:5: for each function it appears in.) checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { void ((*volatile p)()); p = (void ((*)()))db_version; return 0; } /* end */ -------------------- have_library: checking for db_version_4002() in -ldb-4.2... -------------------- no "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb-4.2 -ldl -lcrypt -lm -lc" /tmp/ccwhD9Hw.o(.text+0x17): In function `t': /dmsp/moby-1-1/reference/build/bdb-0.5.1/src/conftest.c:4: undefined reference to `db_version_4002' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_condattr_setpshared' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutexattr_destroy' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutexattr_setpshared' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutexattr_init' /dmsp/reference/lib//libdb-4.2.so: undefined reference to `pthread_mutex_trylock' collect2: ld returned 1 exit status checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { db_version_4002(); return 0; } /* end */ "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb-4.2 -ldl -lcrypt -lm -lc" conftest.c: In function `t': conftest.c:5: `db_version_4002' undeclared (first use in this function) conftest.c:5: (Each undeclared identifier is reported only once conftest.c:5: for each function it appears in.) checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { void ((*volatile p)()); p = (void ((*)()))db_version_4002; return 0; } /* end */ -------------------- have_library: checking for db_version() in -ldb42... -------------------- no "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb42 -ldl -lcrypt -lm -lc" /usr/bin/ld: cannot find -ldb42 collect2: ld returned 1 exit status checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { db_version(); return 0; } /* end */ "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb42 -ldl -lcrypt -lm -lc" conftest.c: In function `t': conftest.c:5: `db_version' undeclared (first use in this function) conftest.c:5: (Each undeclared identifier is reported only once conftest.c:5: for each function it appears in.) checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { void ((*volatile p)()); p = (void ((*)()))db_version; return 0; } /* end */ -------------------- have_library: checking for db_version_4002() in -ldb42... -------------------- no "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb42 -ldl -lcrypt -lm -lc" /usr/bin/ld: cannot find -ldb42 collect2: ld returned 1 exit status checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { db_version_4002(); return 0; } /* end */ "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb42 -ldl -lcrypt -lm -lc" conftest.c: In function `t': conftest.c:5: `db_version_4002' undeclared (first use in this function) conftest.c:5: (Each undeclared identifier is reported only once conftest.c:5: for each function it appears in.) checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { void ((*volatile p)()); p = (void ((*)()))db_version_4002; return 0; } /* end */ -------------------- have_library: checking for db_version() in -ldb-4.1... -------------------- yes "gcc -o conftest -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/dmsp/reference/ruby-1.8.1/lib/ruby/1.8/i686-linux -I/usr/include -g -O2 conftest.c -L"/dmsp/reference/ruby-1.8.1/lib" -L"/dmsp/reference/lib/" -lruby-static -ldb-4.1 -ldl -lcrypt -lm -lc" checked program was: /* begin */ /*top*/ int main() { return 0; } int t() { db_version(); return 0; } /* end */ -------------------- -a -- =============================================================================== | EMAIL :: Ara [dot] T [dot] Howard [at] noaa [dot] gov | PHONE :: 303.497.6469 | A flower falls, even though we love it; | and a weed grows, even though we do not love it. | --Dogen ===============================================================================