This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: --disable-libiberty does not work (as I expect it)


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]