public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Earnshaw <Richard.Earnshaw@foss.arm.com>
To: Erik Bryer <ebryerwork@gmail.com>, gcc-help@gcc.gnu.org
Subject: Re: /usr/bin/ld: error: a.out uses VFP register arguments, /tmp/cceTTKgu.o does not
Date: Mon, 28 Jun 2021 14:48:57 +0100	[thread overview]
Message-ID: <f705d552-355b-4e88-e4d9-f9fe9ca97083@foss.arm.com> (raw)
In-Reply-To: <CACYoJ4M50sBQhUyo6gU-JXjM6L7unbQLn+1m7FRUGi9xeZAPiQ@mail.gmail.com>



On 23/06/2021 07:06, Erik Bryer via Gcc-help wrote:
> Hi,
> 
> I'm trying to build gcc-5.5.0, but it fails at the configure step for
> intl with the error message:
> /usr/bin/ld: error: a.out uses VFP register arguments, /tmp/cceTTKgu.o does not
> Here is what I've done...
> 

GCC-5 is very old now and no-longer supported by the GCC developers.

> # lscpu
> Architecture:          armv7l
> Byte Order:            Little Endian
> CPU(s):                4
> On-line CPU(s) list:   0-3
> Thread(s) per core:    1
> Core(s) per socket:    4
> Socket(s):             1
> Model:                 3
> Model name:            ARMv7 Processor rev 3 (v7l)
> CPU max MHz:           1500.0000
> CPU min MHz:           600.0000
> BogoMIPS:              270.00
> Flags:                 half thumb fastmult vfp edsp neon vfpv3 tls
> vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
> 
> # gcc --version
> gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
> 
> # cd ; cd gcc5build ; rm -rf *
> 
> # export CFLAGS='-mfloat-abi=hard'
> # export CXXFLAGS='-mfloat-abi=hard'

This isn't going to work, as there are assembler files which will likely 
not see these flags.

Instead, use the --with-float=[soft|softfp|hard] option when configuring 
the compiler.

R.

> 
> # $PWD/../gcc-5.5.0/configure --prefix=/opt/gcc5 --enable-languages=c,c++
> 
> # make
> [...]
> checking for C compiler default output file name...
> configure: error: in `/root/gcc5build/intl':
> configure: error: C compiler cannot create executables
> See `config.log' for more details.
> make[2]: *** [configure-stage2-intl] Error 77
> make[2]: Leaving directory `/root/gcc5build'
> make[1]: *** [stage2-bubble] Error 2
> make[1]: Leaving directory `/root/gcc5build'
> make: *** [all] Error 2
> 
> # cat ./intl/config.log
> [...]
> configure:3000:  /root/gcc5build/./prev-gcc/xgcc
> -B/root/gcc5build/./prev-gcc/
> -B/opt/gcc5/armv7l-unknown-linux-gnueabihf/bin/
> -B/opt/gcc5/armv7l-unknown-linux-gnueabihf/bin/ -B/opt/gcc5/armv7
> l-unknown-linux-gnueabihf/lib/ -isystem
> /opt/gcc5/armv7l-unknown-linux-gnueabihf/include -isystem
> /opt/gcc5/armv7l-unknown-linux-gnueabihf/sys-include    -g -O2
> -gtoggle  -static-libstdc++ -static-libgcc  conftest.c  >&5
> /usr/bin/ld: error: a.out uses VFP register arguments, /tmp/cc8LUsFC.o does not
> /usr/bin/ld: failed to merge target specific data of file /tmp/cc8LUsFC.o
> collect2: error: ld returned 1 exit status
> configure:3004: $? = 1
> configure:3041: result:
> configure: failed program was:
> | /* confdefs.h */
> | #define PACKAGE_NAME ""
> | #define PACKAGE_TARNAME ""
> | #define PACKAGE_VERSION ""
> | #define PACKAGE_STRING ""
> | #define PACKAGE_BUGREPORT ""
> | #define PACKAGE_URL ""
> | /* end confdefs.h.  */
> |
> | int
> | main ()
> | {
> |
> |   ;
> |   return 0;
> | }
> configure:3047: error: in `/root/gcc5build/intl':
> configure:3051: error: C compiler cannot create executables
> See `config.log' for more details.
> 
> ## ---------------- ##
> ## Cache variables. ##
> ## ---------------- ##
> 
> ac_cv_env_CC_set=set
> ac_cv_env_CC_value=' /root/gcc5build/./prev-gcc/xgcc
> -B/root/gcc5build/./prev-gcc/
> -B/opt/gcc5/armv7l-unknown-linux-gnueabihf/bin/
> -B/opt/gcc5/armv7l-unknown-linux-gnueabihf/bin/
> -B/opt/gcc5/armv7l-unknown-linux-gnueabihf/lib/ -isystem
> /opt/gcc5/armv7l-unknown-linux-gnueabihf/include -isystem
> /opt/gcc5/armv7l-unknown-linux-gnueabihf/sys-include   '
> ac_cv_env_CFLAGS_set=set
> ac_cv_env_CFLAGS_value='-g -O2 -gtoggle'
> [...]
> 
> I googled and rechecked the install instructions and the FAQ. I have a
> suspicion this has something to do with my using - mfloat-abi=hard. I
> wonder if the fact that on the last line above av_cv_env_CFLAGS_value
> does not include - mfloat-abi=hard means anything. I also tried the
> compiler flags '-mfloat-abi=hard -march=armv7-a -mfpu=neon', but the
> same error resulted.
> 
> Thanks,
> Erik
> 

      reply	other threads:[~2021-06-28 13:48 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-23  6:06 Erik Bryer
2021-06-28 13:48 ` Richard Earnshaw [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f705d552-355b-4e88-e4d9-f9fe9ca97083@foss.arm.com \
    --to=richard.earnshaw@foss.arm.com \
    --cc=ebryerwork@gmail.com \
    --cc=gcc-help@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).