Hi Daniel,

On Thu, Jan 23, 2020, at 10:34 PM, Daniel Gultsch wrote:
> /usr/bin/ld: warning: libicui18n.so.57, needed by
> /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libxml2.so,
> may conflict with libicui18n.so.64
> /usr/bin/ld: warning: libicuuc.so.57, needed by
> /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libxml2.so,
> may conflict with libicuuc.so.64
> /usr/bin/ld: warning: libicudata.so.57, needed by
> /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libxml2.so,
> may conflict with libicudata.so.64

For starters, I would ignore these warnings for now, unless it turns out to be 
an actual problem.  

What's happening here is you have libicu v64 installed via cyruslibs, and you 
have libxml installed from a system package.  libxml depends on libicu, which 
means you also have the system package of libicu, which in this case is v57.  
(I guess you're on something akin to Debian Jessie, cause I am, and I also have 
libicu v57 installed for libxml.)  You will see these warnings if the link 
order is not quite right, or if the link order is correct but the linker is 
linking stuff it doesn't need to.

It would be interesting to see what happens if you add "-Wl,--as-needed" to 
your LDFLAGS -- this is very useful for shaking out link ordering problems -- 
but I don't (yet) think that's the cause of the problem below.  Some platforms 
have this linker option enabled by default, but Debian Jessie doesn't.

> imap/ctl_zoneinfo.o: In function `main':
> /root/cyrus-imapd/imap/ctl_zoneinfo.c:232: undefined reference to
> `xmlGetNextNode'
> /root/cyrus-imapd/imap/ctl_zoneinfo.c:234: undefined reference to
> `xmlGetNextNode'
> /root/cyrus-imapd/imap/ctl_zoneinfo.c:240: undefined reference to
> `xmlGetNextNode'
> /root/cyrus-imapd/imap/ctl_zoneinfo.c:251: undefined reference to
> `xmlGetNextNode'
> /root/cyrus-imapd/imap/ctl_zoneinfo.c:253: undefined reference to
> `xmlGetNextNode'
> collect2: error: ld returned 1 exit status
> Makefile:3639: recipe for target 'imap/ctl_zoneinfo' failed

This is where things get interesting.  xmlGetNextNode is a fallback we provide 
for when libxml doesn't provide xmlFirstElementChild (in which case we #define 
xmlFirstElementChild to call our own xmlGetNextNode).  So it sounds like 
configure might be confused about whether your libxml provides 
xmlFirstElementChild or not...  Do you happen to have multiple versions of 
libxml installed, I wonder?

If you remove the following files from your tree:

./imap/ctl_zoneinfo.o
./imap/ctl_zoneinfo
./imap/.deps/ctl_zoneinfo.Po
./imap/.libs/ctl_zoneinfo

(i.e. the generated files for the ctl_zoneinfo program) and then run "make V=1 
imap/ctl_zoneinfo" to rebuild just this program, what commands are being run to 
rebuild this file?  The V=1 ensures the full commands are output, overriding 
--enable-silent-rules.

The contents of your config.h and config.log would also be very helpful, but 
please check/sanitise them carefully for private information before attaching 
them.  Feel free to send them directly to me (ellie at fastmail dot com) if 
you'd rather not share them with the whole list.

Cheers,

ellie
----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

Reply via email to