Recompiling Exim and libraries

SenetEHV

Verified User
Joined
Nov 6, 2009
Messages
13
Location
Eindhoven, The Netherlands
Strangely the procedure described in the DA knowledge base here http://help.directadmin.com/item.php?id=125 worked fine (after installing the required libs) on some older Debian 5 machines (a couple of months ago), but on a fresh one (Debian 5.0.3 Lenny 32bit) I get the messages below when I "make":
Code:
myserver:~/exim-4.71# make
`Makefile' is up to date.

make[1]: Entering directory `/root/exim-4.71/build-Linux-i386'
gcc -o exim_dbmbuild
/usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/libdb.a(getaddrinfo.o): In function `__db_getaddrinfo':
(.text+0x44): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/libdb.a(os_pid.o): In function `__os_id':
(.text+0x2b): undefined reference to `pthread_self'
/usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/libdb.a(os_yield.o): In function `__os_yield':
(.text+0x12): undefined reference to `pthread_yield'
/usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/libdb.a(mut_pthread.o): In function `__db_pthread_mutex_destroy':
(.text+0x38): undefined reference to `pthread_mutex_destroy'

... (etc)

/usr/lib/gcc/i486-linux-gnu/4.3.2/libgcc_eh.a(unwind-dw2-fde-glibc.o): In function `_Unwind_Find_FDE':
(.text+0x18fa): undefined reference to `pthread_mutex_lock'
/usr/lib/gcc/i486-linux-gnu/4.3.2/libgcc_eh.a(unwind-dw2-fde-glibc.o): In function `__deregister_frame_info_bases':
(.text+0x1b99): undefined reference to `pthread_mutex_unlock'
collect2: ld returned 1 exit status
make[1]: *** [exim_dbmbuild] Error 1
make[1]: Leaving directory `/root/exim-4.71/build-Linux-i386'
make: *** [all] Error 2

Something with static vs. dynamic libraries I could make out from some Google searches. I'm not a Linux programmer, so I'm rather clueless on how to fix this. Does anybody have an idea on how to fix this?
 
Hmm exact same problem over here still without a solution.
 
Hello,

Regarding this link:
http://help.directadmin.com/item.php?id=125

The Makefile will have this line:
Code:
EXTRALIBS=-static
Basically, you'll want to remove that whole line. This perl regex (as per the id=125 guide) will also comment out the line:
Code:
perl -pi -e 's/^EXTRALIBS/#EXTRALIBS/' Makefile
John
 
Eek, I might have overlooked that line in the howto while configuring this server! On our other servers it worked fine, but I must not have overlooked that perl line on this one. I feel quite silly now. :eek: Thanks for the assistance! Going to try it this afternoon, but it looks like this was the problem.

Edit:
Exim has been built successfully. I still feel dumb for missing that one line. :eek:
 
Last edited:
Back
Top