[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-devel
Subject:    Re: [Bug 73477] Berkely DB <= 4.1 required? (Its hard to obtain Berkely
From:       Harald Fernengel <harry () bnro ! de>
Date:       2004-01-27 20:02:25
Message-ID: 4016C3D1.9000204 () bnro ! de
[Download RAW message or body]

Hi,

Florian Schanda wrote:
> On Monday January 26 2004 20:55, Harald Fernengel wrote:
> 
>>------- Just read the logfile:
>>
>>conftest.cc: In function `int main()':conftest.cc:56: warning: 'db' might
>>be used uninitialized in this function/usr/bin/../lib/libdb.so: undefined
>>reference to `pthread_condattr_setpshared'/usr/bin/../lib/libdb.so:
>>undefined reference to `pthread_mutexattr_destroy'/usr/bin/../lib/libdb.so:
>>undefined reference to
>>`pthread_mutexattr_setpshared'/usr/bin/../lib/libdb.so: undefined reference
>>to `pthread_mutexattr_init'/usr/bin/../lib/libdb.so: undefined reference to
>>`pthread_mutex_trylock'collect2: ld returned 1 exit status
>>
>>your libdb.so contains unresolved references, it cannot be used by
>>KDevelop. In future, please use the mailing-list to post build errors.
> 
> 
> If I do 
> 	ldd /usr/lib/libdb.so
> I get no unresolved things:
>         linux-gate.so.1 =>  (0xffffe000)
>         libc.so.6 => /lib/libc.so.6 (0x400d4000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
> 
> It is however not linked to pthread for some reason... Compiling & installing 
> db again does not fix this problem.
> 
> However, the command line for the configure check is:
> g++ -o conftest -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -W 
> -Wpointer-arith -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE 
> -Wcast-align -Wconversion -Wchar-subscripts -DNDEBUG -DNO_DEBUG -O2 -O3 
> -march=pentium4 -mtune=pentium4 -Wformat-security -Wmissing-format-attribute 
> -fno-exceptions -fno-check-new -fno-common  -ldb  -DQT_THREAD_SUPPORT  
> -D_REENTRANT -s conftest.cc
> 
> This lacks a -lpthread; adding this will make the the test-program compile.

That's the problem - your berkeley db library does not link to pthread 
although it uses symbols from pthread. Look at the little example 
program we're compiling - it just includes one header file. If you run 
"nm" on the libdb.so, you should get unresolved symbols in the library 
because it is not linking to pthreads.

Harald

_______________________________________________
Kdevelop-devel mailing list
Kdevelop-devel@barney.cs.uni-potsdam.de
http://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic