libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Libtool adds -lc when it shouldn't


From: Matthew John Warton
Subject: Libtool adds -lc when it shouldn't
Date: Thu, 11 Dec 2003 14:45:52 +1100 (EST)

Hi

I am trying to port gnu gettext to a research operating system called
mungi, using gettext's autoconf/libtool build environment

however there is no libc.a on this platform as of yet, which up until now
has not been a problem, however libtool is explicitly adding -lc to the ld
command line when I have tried to do everything possible to stop it.

The failure output from the specific section of make is as follows(excuse
the masses of compile flags):

/bin/sh ../libtool --mode=link mips64-elf-gcc
-B/import/eno/1/mwarton/work/Mungi/build/ -I- -Wall -Wstrict-prototypes
-Wnested-externs -Wmissing-declarations -Wredundant-decls -Wshadow -O2
-pipe -fomit-frame-pointer -nostdinc -ffreestanding -D_DEBUG_ -D_VERBOSE_
-mabi=o64 -mlong64 -G 0 -mno-abicalls -Wa,-non_shared,-G,0,-mabi=o64 -DGCC
-D__LANGUAGE_C__ -DL4_BIG_ENDIAN=1 -DSTART_ADDR=0xe00000 -EB -mcpu=r4000
-mips3 -DMUNGI -DARCH=mips -DL4API=v4 -DMUNGI_ARCH=mips_v4_u4600
-DL4API_VERSION=400 -DARCH_MIPS -DARCH_MIPS_V4 -DBIG_ENDIAN
-DHAVE_CONFIG_H -I/import/eno/1/mwarton/work/Mungi/.
-I/import/eno/1/mwarton/work/Mungi/include
-I/import/eno/1/mwarton/work/Mungi/kernel/include
-I/import/eno/1/mwarton/work/Mungi/kernel/include/mungi
-I/import/eno/1/mwarton/work/Mungi/lib/libc/std_include
-I/import/eno/1/mwarton/work/Mungi/lib/libc/include
-I/import/eno/1/mwarton/work/Mungi/lib/libc/time
-I/import/eno/1/mwarton/work/Mungi/lib/libc/posix
-I/import/eno/1/mwarton/work/Mungi/lib/libc/posix_nonio
-I/import/eno/1/mwarton/work/Mungi/lib/pax
-I/import/eno/1/mwarton/work/Mungi/lib/naming
-I/import/eno/1/mwarton/work/Mungi/lib/interfaces
-I/import/eno/1/mwarton/work/Mungi/lib/io
-I/import/eno/1/mwarton/work/Mungi/lib/driver
-I/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600
-I/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600/lib/interfaces
-I/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600/lib/io
-I/import/eno/1/mwarton/work/Mungi/platform/mips
-I/import/eno/1/mwarton/work/Mungi/platform/pistachio
-I/import/eno/1/mwarton/work/Mungi/../pistachio/user/include
-I/import/eno/1/mwarton/work/Mungi/platform/pistachio-mips
-I/import/eno/1/mwarton/work/install/include
-I/import/eno/1/mwarton/work/gettext-0.13/gettext-runtime/intl
-I/import/eno/1/mwarton/work/gettext-0.13/gettext-tools/lib
-B/import/eno/1/mwarton/work/Mungi/build/ -EB
-L/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600
-L/import/eno/1/mwarton/work/pistachio/build/mips-user/lib
-L/import/eno/1/mwarton/work/install/lib -o gettext  gettext-gettext.o
../lib/libgrt.a ../intl/libintl.la  -liconv -lmsys -lmungi -lmplat -lklibc
-ll4
mips64-elf-gcc -B/import/eno/1/mwarton/work/Mungi/build/ -I- -Wall
-Wstrict-prototypes -Wnested-externs -Wmissing-declarations
-Wredundant-decls -Wshadow -O2 -pipe -fomit-frame-pointer -nostdinc
-ffreestanding -D_DEBUG_ -D_VERBOSE_ -mabi=o64 -mlong64 -G 0 -mno-abicalls
-Wa,-non_shared,-G,0,-mabi=o64 -DGCC -D__LANGUAGE_C__ -DL4_BIG_ENDIAN=1
-DSTART_ADDR=0xe00000 -EB -mcpu=r4000 -mips3 -DMUNGI -DARCH=mips
-DL4API=v4 -DMUNGI_ARCH=mips_v4_u4600 -DL4API_VERSION=400 -DARCH_MIPS
-DARCH_MIPS_V4 -DBIG_ENDIAN -DHAVE_CONFIG_H
-I/import/eno/1/mwarton/work/Mungi/.
-I/import/eno/1/mwarton/work/Mungi/include
-I/import/eno/1/mwarton/work/Mungi/kernel/include
-I/import/eno/1/mwarton/work/Mungi/kernel/include/mungi
-I/import/eno/1/mwarton/work/Mungi/lib/libc/std_include
-I/import/eno/1/mwarton/work/Mungi/lib/libc/include
-I/import/eno/1/mwarton/work/Mungi/lib/libc/time
-I/import/eno/1/mwarton/work/Mungi/lib/libc/posix
-I/import/eno/1/mwarton/work/Mungi/lib/libc/posix_nonio
-I/import/eno/1/mwarton/work/Mungi/lib/pax
-I/import/eno/1/mwarton/work/Mungi/lib/naming
-I/import/eno/1/mwarton/work/Mungi/lib/interfaces
-I/import/eno/1/mwarton/work/Mungi/lib/io
-I/import/eno/1/mwarton/work/Mungi/lib/driver
-I/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600
-I/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600/lib/interfaces
-I/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600/lib/io
-I/import/eno/1/mwarton/work/Mungi/platform/mips
-I/import/eno/1/mwarton/work/Mungi/platform/pistachio
-I/import/eno/1/mwarton/work/Mungi/../pistachio/user/include
-I/import/eno/1/mwarton/work/Mungi/platform/pistachio-mips
-I/import/eno/1/mwarton/work/install/include
-I/import/eno/1/mwarton/work/gettext-0.13/gettext-runtime/intl
-I/import/eno/1/mwarton/work/gettext-0.13/gettext-tools/lib
-B/import/eno/1/mwarton/work/Mungi/build/ -EB -o gettext gettext-gettext.o
-L/import/eno/1/mwarton/work/Mungi/build/mips_v4_u4600
-L/import/eno/1/mwarton/work/pistachio/build/mips-user/lib
-L/import/eno/1/mwarton/work/install/lib ../lib/libgrt.a
../intl/.libs/libintl.a
-L/import/eno/1/mwarton/work/Mungi/../pistachio/build/mips-user/lib -lc
/import/eno/1/mwarton/work/install/lib/libiconv.a -lmsys -lmungi -lmplat
-lklibc -ll4
/home/disy/crossdev/pc.i86.linux/lib/gcc-lib/mips64-elf/3.2/../../../../mips64-elf/bin/ld:
cannot find -lc
collect2: ld returned 1 exit status

as you can see, libtool is not given a -lc on its command line, yet it
issues one to ld.

In the configure I force the check for needing lc to fail by adding the
following line to the config cache:

archive_cmds_need_lc=no

Which is then properly propogated into the libtool script generated in the
directory.

I have tried tracing through the generated libtool script, but I cannot
see anywhere where -lc is explicitly added, except for one place which is
not executed as archive_cmds_need_lc is no, not yes as is needed for the
if statement (do a search for -lc and you will see what I mean)

Is there something basic I am missing here?  Is there another command
needed to overide this option?

Please let me know,

Matthew Warton
address@hidden





reply via email to

[Prev in Thread] Current Thread [Next in Thread]