嵌入式产品:编译内核

编译内核

1. 下载内核源码:https://www.kernel.org/
2. 安装图形化配置工具
sudo apt-get install libncurses-dev
3. 指定CPU架构和编译器
方法一:
	在内核源码根目录下的Makefile中指定交叉编译工具
	ARCH            ?= arm
	CROSS_COMPILE   ?= arm-none-linux-gnueabi-    # 编译器前缀
	ARCH指定默认索引路径,CROSS_COMPILE 指定交叉编译工具的前缀
方法二:
	命令配置:make ARCH=arm CROSS_COMPILE= arm-none-linux-gnueabi- menuconfig
4. 配置
	a. 配置文件:内核源码根目录下的.config
	b. 清除原有配置和中间文件:make distclean
	c. 简单配置:内核源码根目录arch/arm/configs/下,找到对应CPU或相似的配置文件,覆盖到内核源码根目录下的.config
	或者make xxx_defconfig(其实就是把xxx_defconfig复制到.config)
	d. 个性化配置
	make ARCH=arm menuconfig
	配置后再保存退出(其实还是修改.config)
5. 编译内核(根据.config文件进行编译)
	a. make uImage 生成内核镜像文件uImage (先生成zImage,再压缩uImage)
	b. make zImage 生成内核镜像文件zImage

配置编译设备树

1. 设备树文件:arch/arm/boot/dts/xxx.dts  
2. 编译设备树
make dtbs

内核常用配置

1. gpio:gpio support(/sys/class/gpio)
2. watchdog:watch timer suppourt
3. pwm:pulse-width modulation(pwm) suppourt
4. usb:USB support 
5. 4g:USB driver for GSM and CDMA modems
6. 输入设备:input device deriver
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章