--disable-libiberty does not work (as I expect it)
Steffen Dettmer
steffen.dettmer@googlemail.com
Tue May 3 14:22:00 GMT 2011
Hi,
thank you again for your help!
* On Fri, Apr 29, 2011 at 10:47 PM, Ian Lance Taylor <iant@google.com> wrote:
> * Steffen Dettmer <steffen.dettmer@googlemail.com> writes:
>
>> If I understand correctly, it attempts to builb libiberty for
>> my target platform? I don't need it.
>
> It is built because libstdc++ might use some things defined in
> libiberty. If you are building for C only then you don't need
> it, and it shouldn't be built. If you are building for C++
> also then you may need it and gcc will try to build it.
Yes, but I tried without --disable-libiberty and without C++!
I just restarted with configure in a new directory and it is
reproducible.
Here my options:
$ ../gcc-4.6.0/configure \
--prefix=/usr/local/exp/gcc-4.6.0/ \
--enable-languages=c \
--target=arm-elf \
--program-prefix=arm-elf- \
--with-sysroot=/usr/local/build/gcc/sysroot/ \
--enable-interwork --enable-multilib \
--enable-target-optspace --with-float=soft \
--with-zlib=no \
--disable-libssp \
--disable-shared
Is it correct to disable C++ by giving a --enable-languages list
with is simply not includeing c++?
Did I use the options correctly?
Then I tried:
$ make inhibit_libc=true
After some hours ("felt-time") compilation time I get:
make[2]: Leaving directory `...gcc/gcc-4.6.0-arm/arm-elf/libquadmath'
Checking multilib configuration for libiberty...
mkdir -p -- arm-elf/libiberty
Configuring in arm-elf/libiberty
...
checking for library containing strerror... configure:
error: Link tests are not allowed after GCC_NO_EXECUTABLES.
make[1]: *** [configure-target-libiberty] Error 1
How do I disable libiberty for target?
My target has no strerror (not even errno).
>> When I give `--disable-libiberty', I get an error earlier (that
>> is, there is no rule to make target ../libiberty/libiberty.a or
>> similar).
>
> Right, --disable-libiberty controls the host libiberty, not the
> target one.
(If I understand correctly, then this makes no sense, because gcc
always needs it...).
Actually, the option seems to control BOTH host and target builds.
ok, so how do I disable it for the target only (but not for host)?
(It works when I re-run configure with --disable-libiberty and
re-run make, which still has the host lib but then does not
attempt to build the target lib and works).
Do you have another tip?
Regards,
Steffen
More information about the Gcc-help
mailing list