perl5 stage 9 build, bdb and threads
"Alan J.Wylie" <ebpxyvahk-gCrXjPrFnW/[email protected]>
| Newsgroups | gmane.linux.distributions.rock.devel |
|---|---|
| Message-ID | <[email protected]> |
If you get these error messages from your stage 9 build of perl5
then set ROCKCFG_PKG_PERL5_THREADS to 1
The question also arises why perl is build before bdb, when it can
have a dependency on it.
------------------------------------------------------------------------------
[grep bdb build/alanwXP-TRUNK-x86-athlon-xp-32-alanw-expert/var/adm/dependencies/perl5]
perl5: bdb42
perl5: bdb42:dev
------------------------------------------------------------------------------
[grep -E "perl|bdb" config/alanwXP/packages]
X ---3-----9 102.800 base perl5 5.8.7 / base/development DIETLIBC CORE 0
X -----5---9 103.100 base bdb=bdb33 3.3.11 / base/library CORE 0
X -----5---9 103.100 base bdb=bdb40 4.0.14 / base/library CORE 0
X -----5---9 103.100 base bdb=bdb41 4.1.25 / base/library CORE 0
X -----5---9 103.100 base bdb=bdb42 4.2.52 / base/library CORE 0
------------------------------------------------------------------------------
[package/base/perl5/config.in]
bool 'Use threads' ROCKCFG_PKG_PERL5_THREADS 0
------------------------------------------------------------------------------
[build/alanwXP-TRUNK-x86-athlon-xp-32-alanw-expert/var/adm/logs/9-perl5.err]
Checking your choice of C compiler and flags for coherency...
I've tried to compile and run the following simple program:
#include <stdio.h>
int main() { printf("Ok\n"); return(0); }
I used the command:
gcc -o try -O2 -fno-strict-aliasing -pipe -I/usr/local/include -L/usr/local/lib try.c -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
./try
and I got the following output:
/usr/lib/gcc/i686-unknown-linux-gnu/3.4.5/../../../libdb.so: undefined reference to `pthread_condattr_setpshared'
/usr/lib/gcc/i686-unknown-linux-gnu/3.4.5/../../../libdb.so: undefined reference to `pthread_mutexattr_destroy'
/usr/lib/gcc/i686-unknown-linux-gnu/3.4.5/../../../libdb.so: undefined reference to `pthread_mutexattr_setpshared'
/usr/lib/gcc/i686-unknown-linux-gnu/3.4.5/../../../libdb.so: undefined reference to `pthread_mutexattr_init'
/usr/lib/gcc/i686-unknown-linux-gnu/3.4.5/../../../libdb.so: undefined reference to `pthread_mutex_trylock'
collect2: ld returned 1 exit status
I can't compile the test program.
You have a BIG problem. Shall I abort Configure [y]
Ok. Stopping Configure.
--
Alan J. Wylie http://www.wylie.me.uk/
"Perfection [in design] is achieved not when there is nothing left to add,
but rather when there is nothing left to take away."
-- Antoine de Saint-Exupery