1.解压内核源码

   tar -jxvf linux-xxx.tar.bz2
   或者
   tar -zxvf linux-xxxx.tar.gz

2.清除之前的配置

clean - 清大部分生成的文件, 但是保留配置文件, 以及可以保证足够编译模块的信息。
mrproper - 清所有的生成文件, 以及配置文件, 以及各种备份文件
distclean - mrproper 效果 + gedit 备份文件+补丁文件, 这最彻底的清除。

第一次配置前需要清除垃圾,以防有别人配置过的垃圾

linux内核移植步骤

 

3.拷贝配置文件到顶层目录生成.config文件

  make xxxx_defconfig
  或者
  cp arch/arm/configs/xxxx_defconfig .config

linux内核移植步骤

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

linux内核移植步骤

3. make menuconfig配置

3.1.三个检查

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

linux内核移植步骤

linux内核移植步骤

linux内核移植步骤

3.2.内核特征配置

---->Kernel Features

配置内核空间和用户的比例

linux内核移植步骤

配置 CPU 的处理器数量

 

linux内核移植步骤

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

linux内核移植步骤

 

3.3.Userspace binary formats配置

-> Userspace binary formats
配置系统支持 ELF 格式可执行文件

Symbol: BINFMT_ELF [=y]


linux内核移植步骤

 

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]
 

linux内核移植步骤
linux内核移植步骤

linux内核移植步骤

linux内核移植步骤

linux内核移植步骤

linux内核移植步骤

linux内核移植步骤

 

3.5.printk 打印时间戳

-> Kernel hacking

-> printk and dmesg options

linux内核移植步骤

linux内核移植步骤

 

3.6配置支持模块强制加载功能和卸载功能

Symbol: MODULES [=y]


linux内核移植步骤

linux内核移植步骤

 

4.编译

 

 

 

 

 

相关文章:

  • 2021-12-19
  • 2021-05-21
  • 2021-08-29
  • 2021-09-18
  • 2021-06-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-27
  • 2021-06-08
  • 2021-12-04
  • 2021-05-26
  • 2021-07-08
  • 2022-12-23
相关资源
相似解决方案