Hi,

Riccardo Mottola wrote:
Hi,

following Stuart's suggestion to use libbind, I recompiled and linked Pantomime.

I added:
ADDITIONAL_LDFLAGS += -lbind
ADDITIONAL_LDFLAGS += -Wl,-L/usr/local/lib/libbind -Wl,-R/usr/local/lib/libbind
ADDITIONAL_INCLUDE_DIRS += -I/usr/local/include/bind

I confirm that the additional include gets usied during compilation and then check that the generated library is linked against libbind:

$ ldd /Local/Library/Libraries/libPantomime.so
/Local/Library/Libraries/libPantomime.so:
        Start    End      Type Open Ref GrpRef Name
0d0d1000 2d109000 dlib 1 0 0 /Local/Library/Frameworks/Pantomime.framework/Ver sions/1.2/libPantomime.so.1.2.0
        070fa000 27107000 rlib 0    1   0 /usr/lib/libssl.so.19.0
        0c7ad000 2c7ec000 rlib 0    1   0 /usr/lib/libcrypto.so.22.0
0a763000 2a76b000 rlib 0 1 0 /usr/local/lib/libbind/libbind.so.3.0
        0755a000 2755f000 rlib 0    2   0 /usr/lib/libpthread.so.17.3


I hope this is enough and correct?

When I link GNUMail against Pantomine I get this though:

Making all for app GNUMail...
 Linking app GNUMail ...
/usr/local/lib/libgmp.so.9.0: warning: vsprintf() is often misused, please use vsnprintf() /usr/local/lib/libgcrypt.so.18.0: warning: stpcpy() is dangerous GNU crap; don't use it /usr/local/lib/libobjc.so.5.0: warning: strcpy() is almost always misused, please use strlcpy() /usr/local/lib/libgnutls.so.39.7: warning: strcat() is almost always misused, please use strlcat() /Local/Library/Libraries/libPantomime.so.1.2: warning: sprintf() is often misused, please use snprintf() /Local/Library/Libraries/libPantomime.so.1.2: undefined reference to `__res_state'
collect2: error: ld returned 1 exit status
gmake[3]: *** [GNUMail.app/./GNUMail] Error 1


please note that I added -Wl,-R/usr/local/lib/libbind so I do not expect to need to add anything when buidling GNUmail. Just for the sake, I tried, but it doesn't help. libbind doesn't export a __res_state symbol! But why is present anyway? Pantomime code doesn't reference it explicitely, it uses _res, nothing else. So I suppose it comes from resolv.h
even if the kernel is being extended to support _res better, I'd love to be able tu use libbind.

Any one has a clue about this or a way of getting more clues?

Riccardo

Reply via email to