On Mon, 6 Apr 2009, Timo Sirainen wrote:
I was hoping to finally get shared libdovecot.so and libdovecot-storage.so libraries for v1.3, so Sieve (and maybe others) could link against them. But I'm running into trouble getting it to compile in Solaris 10. Could you non-Linux users test if this compiles with you?
On AIX 5.3, I do get compile errors for all-settings.c[1]. libdovecot.so looks great[2]!
[1] "all-settings.c", line 492.31: 1506-196 (W) Initialization between types "struct dynamic_settings_parser*" and "unsigned long" is not allowed. "all-settings.c", line 517.31: 1506-196 (W) Initialization between types "struct dynamic_settings_parser*" and "unsigned long" is not allowed. "all-settings.c", line 598.28: 1506-196 (W) Initialization between types "unsigned int" and "char*" is not allowed. "all-settings.c", line 598.28: 1506-1106 (S) Initializer does not evaluate to a constant that fits in the target type. "all-settings.c", line 1355.31: 1506-196 (W) Initialization between types "struct dynamic_settings_parser*" and "unsigned long" is not allowed.
[2] # find . |grep libdovecot.so ./src/lib-dovecot/.libs/libdovecot.so.0.0.0 ./src/lib-dovecot/.libs/libdovecot.so.0 ./src/lib-dovecot/.libs/libdovecot.so
http://dovecot.org/tmp/dovecot-1.3.UNSTABLE.tar.gz
Or if anyone has ideas why this happens, I'd like to know:
libtool: link: gcc -std=gnu99 -g -O2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wstrict-aliasing=2 -I/home/cras/include -o .libs/rawlog rawlog.o ../lib-dovecot/.libs/libdovecot.so -lrt -lsocket -lsendfile -Wl,-rpath -Wl,/usr/local/lib/dovecot ../lib-dovecot/.libs/libdovecot.so: undefined reference to
dlerror@SUNW_1.22' ../lib-dovecot/.libs/libdovecot.so: undefined reference to
dlopen@SUNW_1.22' ../lib-dovecot/.libs/libdovecot.so: undefined reference todlsym@SUNW_1.22' ../lib-dovecot/.libs/libdovecot.so: undefined reference to
dlclose@SUNW_1.22'If I disable plugins (so dl*() functions aren't used) it compiles, so it's only those functions that are problematic. pvs -s /lib/libc.so lists the dl* functions under SUNW_1.22 so I'd think that should have worked..
I don't have a Solaris 10 box. I found this link: http://forums-beta.sun.com/thread.jspa?messageID=9269180 which might help. Dig down close to the bottom(July 1,2005).
-Jonathan