linux内核移植步骤
1.解压内核源码tar -jxvf linux-xxx.tar.bz2或者tar -zxvf linux-xxxx.tar.gz2.清除之前的配置clean - 清大部分生成的文件, 但是保留配置文件, 以及可以保证足够编译模块的信息。mrproper - 清所有的生成文件, 以及配置文件, 以及各种备份文件distclean - mrproper 效果 + ...
Table of Contents
3.3.Userspace binary formats配置
1.解压内核源码
tar -jxvf linux-xxx.tar.bz2
或者
tar -zxvf linux-xxxx.tar.gz
2.清除之前的配置
clean - 清大部分生成的文件, 但是保留配置文件, 以及可以保证足够编译模块的信息。
mrproper - 清所有的生成文件, 以及配置文件, 以及各种备份文件
distclean - mrproper 效果 + gedit 备份文件+补丁文件, 这最彻底的清除。
第一次配置前需要清除垃圾,以防有别人配置过的垃圾

3.拷贝配置文件到顶层目录生成.config文件
make xxxx_defconfig
或者
cp arch/arm/configs/xxxx_defconfig .config

修改Makefile
ARCH=arm
COSS_COMPILE=arm-linux-

3. make menuconfig配置
3.1.三个检查
make menuconfig
System type->
1.检查是否支持当前ARM架构
2.检查是否支持当前处理器(EXYNOS4412)
3.检查是否支持当前开发板(tiny4412)



3.2.内核特征配置
---->Kernel Features
配置内核空间和用户的比例

配置 CPU 的处理器数量

配置 EABI 接口支持(很重要, ARM 芯片都要求选择)
什么是 EABI ?
EABI 全称 Embedded application binary interface, 即嵌入式应用二进制接口, 是描述可连接目标代码, 库目标代码, 可执行文件映像, 如何连接, 执行和调试, 以及目标代码生成过程, 和 c, c++语言接口的规范, 是编译连接工具的基础规范, 也是研究它们工作原理的基础。

3.3.Userspace binary formats配置
-> Userspace binary formats
配置系统支持 ELF 格式可执行文件
Symbol: BINFMT_ELF [=y]

3.4.File systems 文件系统配置
-> File systems
Symbol: EXT3_FS [=y]
Symbol: EXT4_FS [=y]
Symbol: MSDOS_FS [=y]
Symbol: VFAT_FS [=y]
Symbol: NFS_FS [=y] 网络文件系统 以便在线调试
语言支持配置
Symbol: NLS_CODEPAGE_936 [=y] 中文支持
Symbol: NLS_UTF8 [=y]







3.5.printk 打印时间戳
-> Kernel hacking
-> printk and dmesg options


3.6配置支持模块强制加载功能和卸载功能
Symbol: MODULES [=y]


4.编译
1、make -j4
2、修改uImage加载和入口地址LOADADRR ENTRYADDR两个值 使得ENTRYADDR = LOADADRR +0x40
vim ./scripts/Makefile.lib //修改Makfile.lib文件
参考文章:uboot引导linux内核过程 卡死Starting kernel ...(下载地址,加载地址,入口地址的修改)(uImage和zImage的区别)

3、LOADADDR=0X40008000 make uImage


更多推荐



所有评论(0)