Rebuilding OLPC kernel

From OLPC
Revision as of 14:05, 9 April 2007 by Dilinger (talk | contribs) (remove the standard build part; it's wrong)
Jump to: navigation, search

This document describes building an OLPC kernel from the olpc-2.6 git repository or SRPM.

The OLPC kernel git repository

The OLPC kernel git repository can be checked out with the following command:

git clone git://dev.laptop.org/olpc-2.6

Alternatively, SRPMs are available at

http://dev.laptop.org/~dilinger/SRPMS/

The SRPM will place sources in /usr/src/redhat/SOURCES/olpc-2.6.tar.bz2

Building the RPM

Building the RPM involves downloading the SRPM, installing it, and then running the rpmbuild command. The "dist", "olpc", and "head" macros should be defined when building:

# rpm -ivh kernel-2.6.1*-20061026_dc5079fafb767e4olpc1.src.rpm
# rpmbuild -ba --define "dist olpc1" --define "olpc 1" --define "head dc5079fafb767e4" --target=i586 /usr/src/redhat/SPECS/olpc-2.6.spec

After the build finishes, the newly build RPMs will be in /usr/src/redhat/RPMS, and the build tree that was used will be in /usr/src/redhat/BUILD. To make quick changes to the source, for example you can:

# cd /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.i586
# vi drivers/video/geode/gxfb_dcon.c
# make
# scp drivers/video/geode/gxfb_dcon.ko testboard:
# ssh testboard "rmmod gxfb_dcon; insmod ./gxfb_dcon.ko"