And we re> [root@hyoklinux uClinux-dist]# mv linux-2.6.5 linux-2.6.x Confirm the configuration files The current uClinux distribution does not contain the proper configuration files for uClinux/ARM 2.6. We need a simple fix-up. The default configuration for ARMulator is at vendors/GDB/ARMulator. We can fix-up the configuration files like this : [root@hyoklinux uClinux-dist]# cp linux-2.6.x/arch/armnommu/configs/GDB_ARMulator_defconfig vendors/GDB/ARMulator/config.linux-2.6.x Since we'll use a ramdisk for the rootfs, we need to fix the “rc” in the configuration directory to use ramdisk device number 1. Edit the vendors/GDB/ARMulator/rc to just like : [root@hyoklinux uClinux-dist]# vim vendors/GDB/ARMulator/rc host>/bin/expand /etc/ramfs.img /dev/ram1 Distribution Configuration We need to configure compilation options for kernel and user applications. [root@hyoklinux uClinux-dist]# make menuconfig At the first Main Menu, Select the “Vendor/Product Selection”. --- Select the Vendor you wish to target You can go back to main menu with 'esc' key or “Exit” button. At the Main Menu, Select the “Kernel/Library/Defaults Selection”. (linux-2.6.x) Kernel Version You can go back to main menu with 'esc' key or “Exit” button, and do it again for save dialog. And save it! Kernel Configuration If you followed the steps in “confirm the configuration files” above, your kernel should have been configured. However, we need to change the initial ramdisk size. Because the romfs.img size with the default applications are about 771KB. In “General setup” menu, there is “Default kernel command string”. Change this to: root=/dev/ram0 initrd=0x01300000,800K keepinitrd You can go back to main menu with 'esc' key or “Exit” button, and do again for save dialog. And save it! Application/library Configuration On this menu, we don't need fix anything for now. Look around the configurations and simply “exit” and save. Make We are ready to make the whole bunch. Simply type: [root@hyoklinux uClinux-dist]# make For linux-2.4.x, you should do “make dep” before “make”. But with linux-2.6.x, you don't need to. It will compile the whole kernel and uclibc, user applications, and make the romfs.img. The results You should get the files in the image directory like: [root@hyoklinux uClinux-dist]# ls -al images total 3036 [root@hyoklinux uClinux-dist]# ls -al linux-2.6.x/linux -rwxr-xr-x 2 root root 15499433 Apr 27 22:11 linux-2.6.x/linux If you see all the files, you've the whole kernel and rootfs image. Let's play with it with ARMulator! ARMulator installation We need another directory to compile the GDB/ARMulator. However, this time, I'll install it in the uClinux-dist directory for temporary usage. [root@hyoklinux uClinux-dist]# tar -jxvf ~/incoming/gdb-5.0.tar.bz2 And patch it! [root@hyoklinux uClinux-dist]# gzip -dc ~/incoming/gdb-5.0-uclinux-armulator-20021127.patch.gz | patch -p0 And another one. [root@hyoklinux uClinux-dist]# gzip -dc ~/incoming/gdb-5.0-uclinux-armulator-ramdisk-20040412.patch.gz | patch -p0 Okay, the codes are ready for compilation. Let's make it. [root@hyoklinux uClinux-dist]# cd gdb-5.0/ |
|
来自: danydany_ok > 《uclinux》