This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See crosstool-NG for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 17.04.2012 21:06, Martin Guy wrote: > The quickest way would be to install a prebuilt toolchain, unless you > are up for the challenge. I had no idea building ARM toolchains would be such a pain. I don't remember building Motorola 68k toolchains back in the late 90s being anywhere near as complicated. > > You'll find Debian packages of gcc 4.1, 4.2 and 4.3 arm-linux-gnu > cross toolchains under > http://www.emdebian.org/debian/pool/main/g/ > Instructions for installing them are on that site's main page and will > work in Debian or Ubuntu systems. > > They should be binary-compatible with your target. If you're not > familiar with Debian systems get back to me and I'll tell you the > mumble you need to chant at them to install them, While using a pre-built toolchain sounds appealing, I don't think it will work. According to the Debian documentation on the various ARM ABIs, the old ABI will report the flags 0x0 with readelf -h; however, the binaries/object files I have that run on this particular system report 0x600 (which as far as I can tell means 'uses software floating point using the VFP floating point format'). In the meantime, I've managed to compile gcc-3.4.6 by disabling c++ support (which I don't really need) and editing the spec file. Unfortunately, this still didn't work because the linker now complains about libfloat being missing. More googling leads me to believe my problem was that the required floating point support is not compiled into libgcc when configuring with --with-float=soft (and ld attempts to link against the non-existant libfloat), but if this option is left out, the object files are flagged as using hardware floating point. It also seems I'm not the only person to run into this problem, and both crosstool and crosstool-ng have patches. I applied the crosstool-ng patch ('260-arm-softfloat.patch', with some modifications, as crosstool-ng also applies other patches that I don't), used the configure options of the original toolchain, and voila - it works ! The compiler bug that caused me to go to all this trouble also seems to be gone. With kind regards, Eric -- Dr. Eric Dönges doenges@mvtec.com MVTec Software GmbH | Neherstr. 1 | 81675 München | Germany www.mvtec.com | Tel: +49 89 457695-0 | Fax: +49 89 457695-55 Geschäftsführer: Dr. Wolfgang Eckstein, Dr. Olaf Munkelt Amtsgericht München HRB 114695 -- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |