Hi all,
I've made a new set of fedora ARM cross toolchain RPMS available at:
http://www.wantstofly.org/~buytenh/cross/
These RPMS are built from vanilla Fedora sources, with only packaging (.spec) changes. The goal is to produce a complete cross toolchain that is as close as possible to a native Fedora toolchain, and usable to cross-build Fedora packages with which are fully binary compatible with natively built packages, with as little source/packaging changes to the package as possible.
To try it out, drop cross.repo into /etc/yum.repos.d/, and run
# yum install armv5tel-redhat-linux-gnueabi-gcc
The cross-compiler package will pull in a set of noarch RPMS containing target libraries, such as glibc. These libraries are installed in the default gcc sysroot location (/usr/$target_triple/sys-root), and the noarch RPMS that contain said libraries are created by repack_cross.pl, provided in the same directory as above.
After installation, you will end up with /usr/bin/armv5tel-redhat-linux-gnueabi-gcc, which can be used to build ARM binaries just like you would build i386 binaries.
To cross-build an autoconf-using package, specify --host and/or --target on the autoconf command line. For example, to build an ARM binary of bash-3.2 on your i386 machine, you would do:
$ ./configure --host=armv5tel-redhat-linux-gnueabi $ make
This works fine, and the resulting binary runs fine in an FC6 ARM chroot on real ARM hardware.
Please send feedback. :-)
thanks, Lennert
On Thu, Aug 23, 2007 at 11:53:37PM +0200, Lennert Buytenhek wrote:
I've made a new set of fedora ARM cross toolchain RPMS available at:
http://www.wantstofly.org/~buytenh/cross/
These RPMS are built from vanilla Fedora sources, with only packaging (.spec) changes. The goal is to produce a complete cross toolchain that is as close as possible to a native Fedora toolchain, and usable to cross-build Fedora packages with which are fully binary compatible with natively built packages, with as little source/packaging changes to the package as possible.
I've made a new version (cross1) available.
Changes relative to the previous version (cross0):
- Added a cross-gdb package. Lightly tested, seems to be able to read ARM core dump files OK, as well as connect to gdbserver and single-step through a simple program with source-level debugging.
To install, type "yum install armv5tel-redhat-linux-gnueabi-gdb".
- Ship packages for libgcc, libgomp, libmudflap, etc. This will eventually reduce dependence on target libraries.
Since I've moved the packages into a subdirectory, please re-download cross.repo.