Differences between revisions 1 and 9 (spanning 8 versions)
Revision 1 as of 2005-05-16 10:59:30
Size: 834
Comment:
Revision 9 as of 2005-09-13 08:53:32
Size: 1412
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
Use only as much space as necessary. This includes no portage nor gcc install on target system (ipaq). The idea is tu fully cross-compile the system for ipaq on a i686 host into a subdir and create a jffs2 image which will be uploaded to the ipaq. Use only as much space as necessary. This includes no portage nor gcc install on target system (ipaq). The idea is to fully cross-compile the system for ipaq on a i686 host into a subdir (using the ${ROOT} portage feature) and create a jffs2 image which will be uploaded to the ipaq (later updates will be done over nfs-mounted root).
Line 6: Line 6:

It's best if you write this to a script...

First, we need the tools for cross-compiling...
Line 11: Line 15:
}}}
Line 12: Line 17:
Prepare the destination directory...

{{{
mkdir /tmp/ipaq
}}}

Now, we can start building the target system...

{{{
Line 34: Line 48:

== Vapier's achievements ==

 * http://dev.gentoo.org/~vapier/CROSS-COMPILE-HOWTO
 * http://dev.gentoo.org/~vapier/CROSS-COMPILE-SYSTEM

== Other links ==

 * http://gentoo-wiki.com/Embedded_Gentoo
 * http://www.yargybot.com/Familiar/MMCFilesystem.html

The idea

Use only as much space as necessary. This includes no portage nor gcc install on target system (ipaq). The idea is to fully cross-compile the system for ipaq on a i686 host into a subdir (using the ${ROOT} portage feature) and create a jffs2 image which will be uploaded to the ipaq (later updates will be done over nfs-mounted root).

The steps

It's best if you write this to a script...

First, we need the tools for cross-compiling...

emerge crossdev

crossdev --target arm-unknown-linux-gnu

Prepare the destination directory...

mkdir /tmp/ipaq

Now, we can start building the target system...

export ARCH="arm"
export ACCEPT_KEYWORDS="arm"
export CHOST="arm-unknown-linux-gnu"
export CBUILD="i686-pc-linux-gnu"

export CFLAGS="-O2 -pipe"
export CXXFLAGS=${CFLAGS}

export ROOT="/tmp/ipaq"

export USE="-*"

export FEATURES="-distcc"

export CONFIG_PROTECT="-* ${ROOT}/etc"

### Bootstrap ###
USE="bootstrap build" emerge sysvinit
USE="bootstrap build" emerge baselayout
emerge sys-kernel/linux-headers
USE="bootstrap build" emerge sys-libs/glibc

Vapier's achievements