On 17/12/10 08:01, Amit Mahajan wrote:
I want to build linaro-netboook filesystem from *sources*, as I need a filesystem build without VFP support.
I checked the wiki and other links but could not find a related document.
Can anyone please point me to directions on how to do the same?
I don't know if there's an official way to do that, but here's what I would do:
1. Find a board you can run the existing installation on. Cross building packages is hard, so it'll be easier to bootstrap it this way.
2. On this board, download the compiler sources:
apt-get source gcc
3. Tweak the compiler configuration flags in the debian directory so that they set up the VFP as you want it, and build the compiler:
sudo apt-get build-dep gcc dpkg-buildpackage gcc*.dsc
4. Install the new gcc into the build board (I would recommend doing this work in a chroot incase something goes wrong ...):
dpkg ..... gcc*.dep
5. Squirrel away the newly built .deb files.
6. Repeat for all packages until you have no packages depending on VFP in your system. Most won't require any reconfiguration, but you never know. It's probably best to start with glibc, and then other libraries, just to make sure the headers and configure tests are right. (Maybe non-VFP kernel headers also, but you'll need to run a VFP-enabled kernel until you're done rebuilding everything.)
Your build file-system should now run on your netbook, although it'll be chock full of -dev packages, so you might have to clean it up a bit.
This should work because the default ARM EABI is the same whether you use VFP, or not. If/when we choose to switch to the hard-fp EABI variant (in theory, it's more efficient), then tricks like this will be more difficult.
Hope that helps
Andrew