栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

内核初体验:编译、下载

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

内核初体验:编译、下载

前言: 

本帖是学习韦东山老师linux kernel教程,粗略总结的课堂笔记及自己感悟。如想深入了解linux kernel,请绕路。

 相关帖子:

uboot启动第二阶段

uboot启动第一阶段

UBOOT初体验:编译、下载

初识uboot Makefile

环境说明


S3C2440开发板

串口线

下载线

光盘linux kernel源码、补丁文件:

002_JZ2440资料光盘_20200423(免费)资料光盘B盘uboot+kernel+filesystem的镜像源码及补丁kernellinux-2.6.22.6.tar.bz2
002_JZ2440资料光盘_20200423(免费)资料光盘B盘uboot+kernel+filesystem的镜像源码及补丁kernellinux-2.6.22.6_jz2440_v2v3.patch

编译下载 1- 上传文件到虚机

将文件linux-2.6.22.6.tar.bz2、linux-2.6.22.6_jz2440_v2v3.patch上传到虚机路径:/home/lhk/2440_learn/kernel/linux-2.6.22.6

2- 解压linux-2.6.22.6.tar.bz2
tar -xjvf linux-2.6.22.6.tar.bz2

3- 打补丁
# cd linux-2.6.22.6
# pwd
/home/lhk/2440_learn/kernel/linux-2.6.22.6/linux-2.6.22.6
# patch -p1 < ../linux-2.6.22.6_jz2440_v2v3.patch

4- 配置编译

config_ok为韦东山提供的内核配置文件

cp config_ok .config
make menuconfig
make uImage

编译的uImage路径为:

/home/lhk/2440_learn/kernel/linux-2.6.22.6/linux-2.6.22.6/arch/arm/boot/uImage

5- 烧录uboot.bin文件到开发板

开发板上电,进入到uboot模式,先擦除flash中原有内核:

OpenJTAG> nand erase kernel

NAND erase: device 0 offset 0x60000, size 0x200000
Erasing at 0x240000 -- 100% complete.
OK

擦除完flash中内核后,重启单板会报错找不到内核:

Booting Linux ...

NAND read: device 0 offset 0x60000, size 0x200000

Reading data from 0x25f800 -- 100% complete.
 2097152 bytes read: OK
## Booting image at 30007fc0 ...
Bad Magic Number


将编译好的uImage烧录进开发板,重启开发板可以看到正常进入到内核。

内核配置

内核配置文件.config文件可以由下面几种方式生成

make menuconfig

手动配置内核

厂商提供

本例中config_ok复制成.config,这里的config_ok即为厂商(韦东山)提供的

使用芯片默认配置

可以搜索系统默认配置

find ./ -name "*defconfig*"

对于我们的2440可以选择arch/arm/configs/s3c2410_defconfig作为默认配置编译,然后在此基础上修改配置文件生成我们需要的.config,或者直接手动修改arch/arm/configs/s3c2410_defconfig文件,复制成.config文件

#find ./ -name "*defconfig*"
arch/arm/configs/s3c2410_defconfig
...

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/733512.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号