et_list & com-err vs imapd v2.2.12 on OSX 10.4.1
OpenMacNews
OpenMacNews at speakeasy.net
Mon May 23 14:18:05 EDT 2005
derrick,
fwiw, i'm seeing et_list-related errors as well, but on OSX 10.4.1
>> `initialize_imap_error_table_r':
>> /usr/local/warez/cyrus-imapd-2.2.10/imap/imap_err.c:68: undefined reference
>> to `initialize_error_table_r'
>> libimap.a(imap_err.o)(.text+0x14):/usr/local/warez/cyrus-imapd-2.2.10/imap/i
>> map_err.c:68: undefined reference to `initialize_error_table_r'
>
> Wild guess, the compile_et and libcom_err are not from the same source.
for a cyrus-imapd-2.2.12 config as:
% unsetenv CFLAGS CPPFLAGS CXX CXXFLAGS LDFLAGS LDDLFLAGS LD_PREBIND LC_ALL
LANG LINGUAS
% setenv LDFLAGS "-bind_at_load -ldl -L/usr/local/berkeley-db/lib -ldb
-F/Library/Frameworks -framework SASL2"
% setenv CPPFLAGS "-I/usr/local/berkeley-db/include
-I/Library/Frameworks/SASL2.framework/Headers"
% ./configure \
--with-cyrus-user=cyradm \
--with-cyrus-group=cyradm \
--with-cyrus-prefix=/usr/local/cyrus-imap/bin \
--with-service-path=/usr/local/cyrus-imap/libexec \
--with-sasl=/usr/local/cyrus-sasl \
--with-bdb \
--with-bdb-libdir=/usr/local/berkeley-db/lib \
--with-bdb-incdir=/usr/local/berkeley-db/include \
--with-openssl=/usr/local/ssl \
--with-perl=/usr/bin/perl \
--with-libwrap \
--with-auth=unix \
--disable-gssapi --without-gss_impl \
--without-krb --without-krbimpl --without-krbdes \
--enable-listext \
--enable-server \
--enable-cyradm \
--with-syslogfacility=LOCAL6 \
--without-snmp \
--enable-sieve \
--with-com_err=/usr
% make depend
is OK, but a subsequent 'make all' fails @:
...
ranlib libsieve.a
gcc -c -I.. -I./../lib -I/usr/include
-I/usr/local/DarkMatter/berkeley-db/include
-I/usr/local/DarkMatter/berkeley-db/include
-I/Library/Frameworks/SASL2.framework/Headers -I/usr/local/ssl/include
-I/usr/local/DarkMatter/cyrus-sasl/include -DHAVE_CONFIG_H -g -O2 \
sievec.c
gcc -L/usr/local/ssl/lib -L/usr/local/DarkMatter/berkeley-db/lib
-bind_at_load -ldl -L/usr/local/DarkMatter/berkeley-db/lib -ldb
-F/Library/Frameworks -framework SASL2 -o sievec sievec.o libsieve.a
../lib/libcyrus.a ../lib/libcyrus_min.a libsieve.a
-L/usr/local/DarkMatter/cyrus-sasl/lib -lsasl2 -lfl
-L/usr/local/DarkMatter/berkeley-db/lib -ldb-4.3 -lssl -lcrypto
/usr/lib/libcom_err.a
powerpc-apple-darwin8-gcc-4.0.0: /usr/lib/libcom_err.a: No such file or
directory
make[1]: *** [sievec] Error 1
make: *** [all] Error 1
note the problem here is that, as reported, there is NO /usr/lib/libcom_err.a
on OSX, rather it's /usr/lib/libcom_err.dylib
simply removing the:
--with-com_err=/usr
from the configure, 'make all' fails, not surprisingly, @:
ranlib libsieve.a
gcc -c -I.. -I./../lib -I/usr/local/DarkMatter/berkeley-db/include
-I/usr/local/DarkMatter/berkeley-db/include
-I/Library/Frameworks/SASL2.framework/Headers -I/usr/local/ssl/include
-I/usr/local/DarkMatter/cyrus-sasl/include -DHAVE_CONFIG_H -g -O2 \
sievec.c
gcc -L/usr/local/ssl/lib -L/usr/local/DarkMatter/berkeley-db/lib
-bind_at_load -ldl -L/usr/local/DarkMatter/berkeley-db/lib -ldb
-F/Library/Frameworks -framework SASL2 -o sievec sievec.o libsieve.a
../lib/libcyrus.a ../lib/libcyrus_min.a libsieve.a
-L/usr/local/DarkMatter/cyrus-sasl/lib -lsasl2 -lfl
-L/usr/local/DarkMatter/berkeley-db/lib -ldb-4.3 -lssl -lcrypto -lcom_err
/usr/bin/ld: Undefined symbols:
__et_list
collect2: ld returned 1 exit status
make[1]: *** [sievec] Error 1
make: *** [all] Error 1
finally, fyi:
% which compile_et
/usr/bin/compile_et
% ls -al /usr/bin/compile_et
-rwxr-xr-x 1 root wheel 9174 Mar 23 14:00 /usr/bin/compile_et
% ls -al /usr/include/com_err.h
-rw-r--r-- 1 root wheel 3494 Mar 23 14:06 /usr/include/com_err.h
% ls -al /usr/lib/libcom_err.dylib
lrwxr-xr-x 1 root wheel 54 May 10 09:40 /usr/lib/libcom_err.dylib ->
/System/Library/Frameworks/Kerberos.framework/Kerberos
% ls -al /System/Library/Frameworks/Kerberos.framework/Kerberos
lrwxr-xr-x 1 root wheel 25 May 10 09:41
/System/Library/Frameworks/Kerberos.framework/Kerberos ->
Versions/Current/Kerberos
% ls -al
/System/Library/Frameworks/Kerberos.framework/Versions/Current/Kerberos
-rwxr-xr-x 1 root wheel 1759868 May 17 15:14
/System/Library/Frameworks/Kerberos.framework/Versions/Current/Kerberos
although i'm not certain, i think the problem may stem from the fact that
et_list is not defined in libcom_err/com_err.h, i.e.:
% nm /usr/lib/libcom_err.dylib | grep et_list
% (<-- empty)
% grep et_list /usr/include/com_err.h
% (<-- empty)
and/or the .a vs .dylib issue, as above ...
any ideas? i'm happy to provide what detail is needed/helpful ...
cheers,
richard
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list