小白自制Linux开发板 :Linux内核与文件系统移植

1.Linux内核

事实上对于F1C100S/F1C200S,Linux官方源码已经对licheepi nano进行支持。所以我们完全可以通过licheepi nano的配置文件进行移植。

1.1. 下载内核源码

进入Linux系统官网:

https://www.kernel.org/

这里面列出的都是一些主要版本,如主线版本,上时间支持版本,个人推荐使用最新的长时间支持版本(5.10.69)。但是因为我这个项目是在参考一位大神的文档的基础上构建的,所以使用的是5.7.1版本,接下来就给一个选择其他版本的方式。

选择任意一项点击 [browse]

在新打开页面选择 【summary】点击【tag】中的【…】切换下载

如果想要直接下载5.7.1版本,请直接使用下面的连接

https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.7.1.tar.gz

下载后完成后,将代码复制到Ubuntu虚拟机并解压源码。

【文章福利】小编推荐自己的Linux内核技术交流群: 【977878001】整理一些个人觉得比较好得学习书籍、视频资料!进群私聊管理领取 内核资料包(含视频教程、电子书、实战项目及代码)

内核资料直通车:Linux内核源码技术学习路线+视频教程代码资料

免费加入学习:Linux/c/c++/内核源码/音视频/DPDK/Golang云原生/QT

1.2.配置编译

与上一篇中编译u-boot一样,我们也需要配置对Linux编译进行配置:

  • 指定架构类型
  • 指定交叉编译工具
  • 项目配置

指定架构,就这个很好理解,就是指定CPU类型,就是配置为Arm就行,交叉编译工具即为上一篇已经安装好的编译工具。

用VS打开Linux内核代码,找到Makefile文件:

修改如下配置:

ARCH ?= arm CROSS_COMPILE ?=arm-linux-gnueabi-

如果没找到ARCH 或 CROSS_COMPILE字段,自己手动添加也行,如下图所示:

事实上这两个字段可以不用指定,在进行make的时候加上对应的参数就行,这里为了避免麻烦,所以直接放到了makefile文件中

接下来就是指定项目配置了,这个操作就是让Linux内核认F1C100S/F1C200S这颗soc。

进入内核源码中的arch/arm/configs目录中,可以看到有很多开发板的配置文件,其中sunxi_defconfig是全志的配置文件,但是该配置文件非常不全,需要额外配置大量的选项,一般选项多大上千个,这里先使用licheepi_nano的配置文件。

https://files.cnblogs.com/files/twzy/linux-licheepi_nano_defconfig.zip

下载该文件,解压出linux-licheepi_nano_defconfig,然后将其放到arch/arm/configs/目录下

然后通过终端进入Linux-5.7.1根目录,输入命令:

make menuconfig

进入图形配置界面,如图所示:

  • 17
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值