This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/53983] Cross arm-none-eabi armv6-m need a fake Makefile to compile libgcc
- From: "terry.guo at arm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 25 Oct 2012 09:53:19 +0000
- Subject: [Bug target/53983] Cross arm-none-eabi armv6-m need a fake Makefile to compile libgcc
- Auto-submitted: auto-generated
- References: <bug-53983-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53983
Terry Guo <terry.guo at arm dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |terry.guo at arm dot com
--- Comment #1 from Terry Guo <terry.guo at arm dot com> 2012-10-25 09:53:19 UTC ---
The provided configure options imply two things: the default target of current
tool chain is set to armv6-m and the multilib isn't disabled. If multilib isn't
disabled, gcc will try to build three multilibs from options "-marm", "-mthumb"
and "-mfloat-abi=hard". And the last option "-mfloat-abi=hard" can't work with
armv6-m because thumb1 doesn't support hard-float ABI so far. I think this is
the reason of your problem. If you check the config.log in folder
BUILDDIR/arm-none-eabi/fpu/libgcc/, you will find something like "sorry,
unimplemented: Thumb1-1 hard-float VFP ABI".
To get a successful build, you need to add configure option --disable-multilib.
Otherwise you can remove "--with-arch=armv6-m --with-mode=thumb" and use
multilib Makefile fragment to build libraries for armv6-m.
Here the multilib means the libgcc and c libraries will be built multiple times
with different options. Finally we will get multiple libraries for different
targets.