ts-7000
[Top] [All Lists]

Re: [ts-7000] Re: Ts 7800 cross compilation problems: ld-linux.so.3

To:
Subject: Re: [ts-7000] Re: Ts 7800 cross compilation problems: ld-linux.so.3
From: Frank <>
Date: Fri, 11 Jan 2008 16:56:30 -0500
I have the kernel set up to (try and) compile entirely on the 7800.  I copied the .config-oct8 to .config, commented out the CROSS_COMPILE in the Makefile, and did a make.

After about a minute, I got this:

   SYMLINK include/asm -> include/asm-arm
  CC      arch/arm/kernel/asm-offsets.s
cc1: error: invalid option `abi=aapcs-linux'
make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2

I found this conditional in the arch/arm/Makefile

ifeq ($(CONFIG_AEABI),y)
CFLAGS_ABI      :=-mabi=aapcs-linux -mno-thumb-interwork
else
CFLAGS_ABI      :=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) $(call cc-option,-m
no-thumb-interwork,)
endif

I could obviously set CONFIG_AEABI to 'n' in the .config, but I wonder why it was there in the first place if things would not compile with it set to 'y'.

Any takers?

Thanks,

-Frank
Holland, PA

zheng_zhou_mail wrote:

--- In .com, "friderman" <..> wrote:
>
> I've recently received a ts7800 board and I'm having some problems
> with the cross compilations tools.
> I downloaded the cross-tool from
>
ftp://ftp.embeddedarm.com/ts-7800-linux-sd/cross-toolchains/ts7800-crosstool-3.4.4-2005q3-2-linux.tar.gz
> but it seems like the libraries on the tool and the libraries on the
> board don't match. For example, when I compile a simple hello world
> app, the tool correctly generates an ARM ELF but once on the board it
> doesn't work. It complains it cannot find ld-linux.so.3, and that's
> true, because only ld-linux.so.2 exists. If I try to simlink
> ld-linux.so.3, the next error becomes /lib/libc.so.6: version
> `GLIBC_2.4' not found (required by ./hello). So I guess there is some
> compatibility problem between the toolchain and the board's os.
> Maybe I'm using and old toolchain? Can you point me to the right
> toolchain?
>
I had the same issue as what you have now, and found out the
debian built on the ts7800 actually is not generated from the
cross-tool from the ts. For example, gcc-3.3.5 on the ts7800, which
may be from Marvell, only supports the legacy ABI, while the 2005q3
from the CodeSourcery provides the gcc-3.4.4 with the ARM EABI for
ARMv5t, and the 2007q1 has gcc-4.2.0 for ARMv4 EABI. This is reason
why a shared library (see fulatoro's dynamically linked helloworld's
case) failed. Moreover, the cross-compiling environment provided from
the TS actually won't work with the current setup on the ts7800.
To fix this problem, you have to either directly built your
application on the ts7800, or set up a NSF with your desktop
development environment. But the best way is to rebuilt whole system
on the ts7800 with new cross-tool. I downloaded the 2007q3 already,
and will do it when having a free time.

Good luck!

zheng

> BTW, ts7800 rocks! ;)
>
> Best regards
>

__._,_.___

Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: =Email Delivery: Digest | m("yahoogroups.com?subject","ts-7000-fullfeatured");=Change Delivery Format: Fully Featured">Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | =Unsubscribe

__,_._,___
<Prev in Thread] Current Thread [Next in Thread>
Admin

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU