undefined reference to `_et_list'
Gaurav Gupta
gagupta at cisco.com
Tue Oct 23 21:25:17 EDT 2007
I am building krb5-1.6.1.tar.gz on a 64 bit CentOS 4.1. I am getting the
following error when I specify the '--with-system-et' option to use the
system libcom_err library:
making all in lib/rpc/unit-test...
make[4]: Entering directory
`/net/home/gagupta/git/clones/krb-dev2/src/ext/cmd/krb5/src/lib/rpc/unit-tes
t'
gcc -L../../../lib -Wl,-rpath
-Wl,/net/home/gagupta/git/clones/krb-dev2/src/ext/cmd/krb5/../../../../build
/prod/x86_64/proto/usr/lib -D_FILE_OFFSET_BITS=64 -I/usr/include/et -fPIC
-O2 -g -pipe -o client client.o rpc_test_clnt.o \
-lgssrpc -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lkrb5support
-lresolv -ldl
../../../lib/libgssapi_krb5.so: undefined reference to `_et_list'
I checked and the /lib64/libcom_err.so.2 on the system has '_et_list'
defined:
# nm --dynamic /lib64/libcom_err.so.2
0000003a9fe00f00 T add_error_table
0000003a9fe00fc0 T add_to_error_table
0000003a9ff018d0 A __bss_start
0000003a9fe011a0 T com_err
0000003a9ff018c8 D com_err_hook
0000003a9fe01190 T com_err_va
0000003a9fe01290 T com_right
w __cxa_finalize
0000003a9ff01668 A _DYNAMIC
0000003a9ff018d0 A _edata
0000003a9ff01918 A _end
0000003a9fe00d70 T error_message
0000003a9fe00fd0 T error_table_name
0000003a9ff018e0 B _et_list <------------Here
<snip>
When I build without the '--with-system-et' and let Kerberos build its own
libcom_err.so.3 it builds fine. The weird part is that it builds fine on
a 32 bit system, which makes me wonder if I am not specifying any option
right:
Here is the config options I am using:
cd src; ./configure \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=$(MY_INSTALL_ROOT)/usr/kerberos/bin \
--sbindir=$(MY_INSTALL_ROOT)/usr/kerberos/sbin \
--sysconfdir=$(MY_INSTALL_ROOT)/etc \
--datadir=$(MY_INSTALL_ROOT)/usr/kerberos/share \
--includedir=$(MY_INSTALL_ROOT)/usr/include \
--libdir=$(MY_INSTALL_ROOT)/usr/lib \
--libexecdir=$(MY_INSTALL_ROOT)/usr/libexec \
--localstatedir=$(MY_INSTALL_ROOT)/var/kerberos \
--sharedstatedir=$(MY_INSTALL_ROOT)/usr/com \
--mandir=$(MY_INSTALL_ROOT)/usr/kerberos/man \
--infodir=$(MY_INSTALL_ROOT)/usr/share/info \
CC=gcc \
CFLAGS="$(CFLAGS)" \
CPPFLAGS="$(CPPFLAGS)" \
OPENLDAP_PLUGIN="$(OPENLDAP_PLUGIN)" \
SS_LIB="-lss -lcurses" \
--enable-shared \
--with-krb4 \
--with-system-et \
--with-system-ss \
--with-netlib=-lresolv \
--without-tcl \
--enable-dns
Thanks,
Gaurav
More information about the Kerberos
mailing list