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

Re: [Patches] SWI relocation error building EGLIBC for ARM Cortex-A8

On 04/22/2012 06:18 AM, Joseph S. Myers wrote:
> On Sat, 21 Apr 2012, P. J. McDermott wrote:
>> Hi,
>> I'm trying to build a cross toolchain for the ARM Cortex-A8 core
>> (ARMv7-A).  (See my configuration and build procedure [1] for GCC and
>> EGLIBC.)  I've built and installed Linux's headers, Binutils, GMP, MPFR,
>> MPC, and a statically-linked GCC.  When I try to build EGLIBC, I get the
>> following error about software interrupt relocation:
>>   ../sysdeps/unix/syscall.S: Assembler messages:
>>   ../sysdeps/unix/syscall.S:28: Error: cannot represent SWI relocation i
>>   n this object file format
> That file should never be used for ARM at all.  With ARM EABI, up until 
> yesterday the file sysdeps/unix/sysv/linux/arm/eabi/syscall.S should be 
> used (the eabi/ directory no longer exists); with old-ABI (no longer 
> supported), an automatically generated syscall from 
> sysdeps/unix/sysv/linux/arm/syscalls.list would have been used.
> Thus, EGLIBC has been misconfigured for ARM EABI; it was not configured 
> with the correct options, did not have the correct source directory 
> contents for those options (unmodified EGLIBC sources except for the ports 
> directory being in the appropriate place for the given --enable-add-ons 
> configure option) or otherwise configured the wrong set of sysdeps 
> directories.  You need to resolve that issue before looking at any other 
> problems.
> There are no problems with asm/unistd.h here and no need for any change to 
> that file or other headers from the Linux kernel.

Ah, you're right.  I failed to correctly place the ports add-on
directory...  With that fixed, EGLIBC builds without error.  Thanks!
Patches mailing list