3.0.20 Alpha configure on AIX4.3 for -lcom_err broken

Nik Conwell nik at bu.edu
Mon Nov 25 15:26:02 GMT 2002


On Tue, 26 Nov 2002, Jelmer Vernooij wrote:

> Please don't send in patches to configure, but to configure.in
> instead. Configure is autogenerated.

Sorry; new to this.

> Is there anything useful in config.log that indicates why the test for
> _et_list in -lcom_err fails?

Nothing interesting (to me):

configure:12300: checking for _et_list in -lcom_err
configure:12319: cc -o conftest -O  -D_LINUX_SOURCE_COMPAT -qmaxmem=32000 -I/usr/local/krb5-1.2.6/include  -D_LAR
GE_FILES -I/usr/local/krb5-1.2.6/include  -L/usr/local/krb5-1.2.6/lib conftest.c -lcom_err   -lkrb5 1>&5
+ eval ${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5
+ cc -o conftest -O -D_LINUX_SOURCE_COMPAT -qmaxmem=32000 -I/usr/local/krb5-1.2.6/include -D_LARGE_FILES -I/usr/l
ocal/krb5-1.2.6/include -L/usr/local/krb5-1.2.6/lib conftest.c -lcom_err -lkrb5
+ 1>& 5
ld: 0711-317 ERROR: Undefined symbol: ._et_list
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
configure: failed program was:
#line 12308 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char _et_list();

int main() {
_et_list()
; return 0; }




I broke apart the compile:


10:20:50 acsn08 [source] cat foobar2.c
/* #include "confdefs.h" */
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char _et_list();

int main() {
_et_list()
; return 0; }
10:20:52 acsn08 [source] cc -o conftest -g -L/usr/local/krb5-1.2.6/lib -lkrb5 -lk5crypto -lkrb5 -lcom_err -llber foobar2.c
ld: 0711-317 ERROR: Undefined symbol: ._et_list
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
10:20:55 acsn08 [source] nm /usr/local/krb5-1.2.6/lib/libcom_err.a |grep _et_list
_et_list             D       1108       4
_et_list             d       1052       4


If I try to build Samba without -lcom_err in LIBS I get a similar undefined on
_et_list (and also error_message).  If I add -lcom_err to LIBS, things build.
I checked the rest of the Samba build LIBS and added them to the above test, but
they didn't help find _et_list...

Here's the AIX cc debug output:

10:21:14 acsn08 [source] cc -o conftest -g -L/usr/local/krb5-1.2.6/lib -lkrb5 -lk5crypto -lkrb5 -lcom_err -llber foobar2.c -bnoquiet
(ld): halt 4
(ld): savename conftest
(ld): filelist 8 2
(ld): i /lib/crt0.o
(ld): lib /usr/local/krb5-1.2.6/lib/libkrb5.a
(ld): lib /usr/local/krb5-1.2.6/lib/libk5crypto.a
(ld): lib /usr/local/krb5-1.2.6/lib/libcom_err.a
(ld): lib /usr/lib/liblber.a
(ld): i foobar2.o
(ld): lib /usr/lib/libg.a
(ld): lib /usr/lib/libc.a
LIBRARY: Shared object liblber.a[liblber.so.2]: 89 symbols imported.
LIBRARY: Shared object libc.a[shr.o]: 2268 symbols imported.
LIBRARY: Shared object libc.a[meth.o]: 2 symbols imported.
LIBRARY: Shared object libc.a[aio.o]: 11 symbols imported.
LIBRARY: Shared object libc.a[pse.o]: 78 symbols imported.
LIBRARY: Shared object libc.a[dl.o]: 4 symbols imported.
LIBRARY: Shared object libc.a[pty.o]: 1 symbols imported.
FILELIST: Number of previously inserted files processed: 8
(ld): exports /usr/lib/libg.exp
EXPORTS: Symbols exported: 4
(ld): resolve
RESOLVE: 36 of 4526 symbols were kept.
(ld): addgl /usr/lib/glink.o
ADDGL: Glink code added for 4 symbols.
(ld): er full
ld: 0711-318 ERROR: Undefined symbols were found.
        The following symbols are in error:
 Symbol                    Inpndx  TY CL Source-File(Object-File) OR Import-File{Shared-object}
                              RLD: Address  Section  Rld-type Referencing Symbol
 ----------------------------------------------------------------------------------------------
 ._et_list                 [32]    ER PR foobar2.c(foobar2.o)
                                   0000000c .text    R_RBR    [18]    .main
ER: The return code is 8.


Since the same thing happens w/ gcc, I suspect it's not just an AIX linker
bug...

-nik




More information about the samba-technical mailing list