※ 参考文章: http://blog.csdn.net/jinzheng_2010/article/details/8676213 http://blog.csdn.net/rk2900/article/details/8848093
※ 编译步骤: 下载工具链、kernel源文件、固件Firmware 内核配置 编译 SD卡上部署 ------------------------------------------------------------------下载工具链、kernel源文件、固件Firmware $ git clone git://github.com/raspberrypi/firmware.git RpiFirmware $ git clone git://github.com/raspberrypi/linux.git RpiLinux $ git clone git://github.com/raspberrypi/tools.git RpiTools
内核配置 1. 获取配置文件
a. 在现有树莓派系统上的zcat /proc/config.gz > .config b. 将.config 拷贝的内核文件的根目录。 注意:备份内核文件下的.config
2.修改RpiLinux下的Makefile (也可以不修改,编译时加上参数即可) ARCH ?= arm CROSS_COMPILE ?= ../RpiTools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/bin/arm-bcm2708hardfp-linux-gnueabi-
3. make menuconfig
修改配置信息(追加或者删除) ※ 控制台全屏 过小会提示错误
编译 1. 内核编译
a. make
b. 在RpiLinux/arch/arm/boot目录下的Image
2. Modules编译 a. make modules b. make modules_install INSTALL_MOD_PATH=../modules b. 在RpiLinux的上一级modules下生成lib/firmware lib/modules
SD卡上部署 a. 将Image拷贝到/boot目录下命名为kernel_new.img b. 在config.txt末尾追加kernel=kernel_new.img
2. Modules的配置 a. 将make modules生成的firmware和modules拷贝到/lib下 3. bootcode.bin fixup.dat fixup_cd.dat start.elf配置 a. 将RpiFirmware/boot下的bootcode.bin fixup.dat fixup_cd.dat start.elf拷贝到/boot下 4. vc配置 a. 备份/opt下的vc b. 拷贝RpiFirmware/hardfp/opt下的vc到/opt下。
内核编译完了。
|