Several months ago I mentioned that Red Hat had a cross build environment which generates embedded root filesystems using Fedora source rpms. Today we are making it available. It is rough around the edges, but functional. If people express an interest in it we will see about putting it on Fedora hosted and have future development take place there. All the bits are on the GES FTP server:
ftp://ftp.ges.redhat.com/private/releng/arm-linux-beta
The cross build environment is called 'rpmbuildroot'. This is the package you are looking for. Jump into the docs directory for information on how to get started (skip the top level README).
For the last while the focus has been on the Nokia N770, so you will find that is what the environment is configured for. There are also some mips and am33 patches in there (rpmbuildroot is target arch independent), but they are unlikely to be valid for any modern Fedora version.
The FTP server also hosts the cross compiler toolchain that rpmbuildroot is known to work with. The binary rpm was built on RHEL5, but should work on any modern Fedora release.
Current rpmbuildroot caveats:
1. x86_64 support is not included. It only runs on i686 hosts. This may or may not resolve with setarch. Certainly it won't take much work to get running on x86_64.
2. The package list is currently against Fedora 7. Moving to 8 or rawhide is relatively straightforward, but takes a little time for each package update.
3. The latest version of mock does not work with rpmbuildroot. We include a version that does work.
Let me know if you have any questions or comments. I didn't do the engineering work for this, but as a test hamster, have been able to run 'make' successfully so I might be able to answer them.
Have fun,
On Mon, 2008-03-10 at 11:13 -0600, Brendan Conoboy wrote:
The FTP server also hosts the cross compiler toolchain that rpmbuildroot is known to work with. The binary rpm was built on RHEL5, but should work on any modern Fedora release.
We really ought to work on getting cross-toolchains into Fedora.
- x86_64 support is not included. It only runs on i686 hosts. This
may or may not resolve with setarch. Certainly it won't take much work to get running on x86_64.
And PPC?
On Mon, Mar 10, 2008 at 06:18:16PM +0100, David Woodhouse wrote:
The FTP server also hosts the cross compiler toolchain that rpmbuildroot is known to work with. The binary rpm was built on RHEL5, but should work on any modern Fedora release.
We really ought to work on getting cross-toolchains into Fedora.
I took your binutils-cross patch a while ago and added gcc/gdb cross patches to come up with a way of building cross-toolchains from Fedora sources:
http://ftp.linux.org.uk/pub/linux/arm/fedora/cross/latest/
Wiki page detailing how to use this on ARM:
http://fedoraproject.org/wiki/Architectures/ARM/CrossToolchain
David Woodhouse wrote:
- x86_64 support is not included. It only runs on i686 hosts. This
may or may not resolve with setarch. Certainly it won't take much work to get running on x86_64.
And PPC?
Might work out of the box. The problem I see when building under x86_64 is when building glibc, the spec file looks for libraries /usr/lib64 when building for an arm target. If PPC just uses /usr/lib, it may proceed normally.
Brendan Conoboy wrote:
Several months ago I mentioned that Red Hat had a cross build environment which generates embedded root filesystems using Fedora source rpms. Today we are making it available.
In the interests of spurring some discussion, I wanted to let you all know our current thinking on the future of rpmbuildroot and solicit some feedback. Current todo/wish list:
1. Support the latest mock.
2. Compose rootfs with ancondo/livecd-tools instead of home-grown solution.
3. Go from bootstrap oriented to bootstrap capable/package oriented. Perhaps integrate with koji.
4. Track down x86_64 host failures.
5. It's been mentioned that it needs a better name- any suggestions?