Compiling the Kernel

From OESF

(Difference between revisions)
Jump to: navigation, search
(revert to remove spam)
Current revision (20:27, 25 November 2007) (edit) (undo)
(Development category)
 

(24 intermediate revisions not shown.)

Line 1:

Line 1:

-
Howto compile and install the Linux kernel for the Zaurus.
+
How to compile and install the Linux kernel for the Zaurus.
==Acquiring the source==
==Acquiring the source==

Line 29:

Line 29:

$ export PATH=$PATH:/opt/Embedix/tools/bin
$ export PATH=$PATH:/opt/Embedix/tools/bin
And go ahead and start to compile the new kernel.
And go ahead and start to compile the new kernel.
-
$ make dep && make clean && make zImage
+
$ make dep
-
Once done there should be a file called zImage in arch/arm/boot which is the newly compiled kernel. If any modules where added to the new kernel config, compile them:
+
[[Category:Development]]
-
$ make modules
+
-
You will have to copy the modules into Zaurus's filesystem.
+
-
 
+
-
==Installing the kernel==
+
-
To install the kernel simply place the file by itself on a cf card and flash like normal, following the Upgrading the ROM howto, but only with that one file (zImage) on the cf card and nothing else.
+
-
 
+
-
==Notes==
+
-
Attempting to install kernels other then the one suplied by Sharp are likely to cause the binary-only modules to fail such as the SD module.
+
-
 
+
-
You've only got 1MB of space to store the new kernel, so it had better fit in that size.
+

Current revision

How to compile and install the Linux kernel for the Zaurus.

Acquiring the source

First thing of course is to get the kernel source (~22MB). A local copy is kept [here | http://www.oesf.org/howto/downloads/linux-sl5500-20020910.tar.bz2], but the [Sharp Japan's site] (seems to have moved to [here]) should always be checked to see if they have released anything new.

Unpack the archive using your favorite tool/commands.

$ bunzip2 linux-sl5000d-20020318.tar.bz2
$ tar xf linux-sl5000d-20020318.tar

Configuring the source

Go into the newly created linux directory and run make menuconfig.

$ cd linux
$ make menuconfig

The configuration for the 5500 and the 5000D are stored within the kernel source and should be loaded. Choose "Load an Alternate Configuration File" and Input

 "arch/arm/def-configs/sl5500" for the SL-5500 and
 "arch/arm/def-configs/sl5000d" for the SL-5000D.

Select "OK"

Make whatever changes to the kernel config that are desired. (Such as enabling Wireless Extensions.)

When done changing configuration options, Select "Exit"
Answer "Yes" to "Do you wish to save your kernel configuration?"

Compiling the source

Make sure the cross-compiler (arm-linux-gcc) is in the path at this point

 $ export PATH=$PATH:/opt/Embedix/tools/bin

And go ahead and start to compile the new kernel.

 $ make dep
Personal tools