定制最简linux和根文件系统(平台龙芯1B开发板)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定制最简linux和根文件系统(平台龙芯1B开发板)版本历史版本 V1.0 时间 2021-08-28 备注创建 1
1. 前言............................................................................ (3)
1.1. 开发板版本
号 ........................................................................... ....................................... 4 1.2. 工具链版本
号 ........................................................................... ....................................... 4 1.3. 参考文档及其版本
号 ........................................................................... ........................... 4 1.4. 目
标 ........................................................................... ....................................................... 5 2. 搭建开发环
境 ........................................................................... ................................................... 5 3. 制作根文件系
统 ........................................................................... .. (6)
3.1. 配
置 ........................................................................... . (6)
3.1.1. 拷贝源码,并解
压 ........................................................................... ..................... 6 3.1.2. 配置选项简
述 ........................................................................... ............................. 7 3.2. 编
译 ........................................................................... ....................................................... 8 3.3. 构建根文件系
统 ........................................................................... .. (9)
3.3.1. 建立系统根目
录 ........................................................................... ......................... 9 3.3.2. 建立设备文
件 ........................................................................... ............................. 9 3.3.3. 建立系统配置文
件 ........................................................................... . (10)
4. 编译
linux ........................................................................ . (12)
4.1. 配
置 ........................................................................... .. (13)
4.1.1. 首先拷贝源码,并解
压 ........................................................................... ........... 13 4.1.2. 不安装
Ncurses ...................................................................... .............................. 13 4.1.3. 没有拷
贝.config..................................................................... .............................. 14 4.1.4. 不用修改
Makefile ..................................................................... ......................... 14 4.1.5. 配置选项简
述 ........................................................................... ........................... 14 4.2. 编
译 ........................................................................... ..................................................... 16 5. 启动运行
linux ........................................................................ .. (17)
5.1. 拷贝vmlinux到tftp服务器目录
下 ........................................................................... .. 17 5.2. 设置PMON的ip地
址 ........................................................................... ...................... 17 5.3. 下载内
核 ........................................................................... ............................................. 17 5.4. 启动
linux ........................................................................ .. (17)
1. 前言
很高心拿到了龙芯1B开发板。
然后仔细的看了开发板光盘里的《1B开发板用户手
册.pdf》。
里面写得非常详细,并且都附有截图,很明了。
从最开始装虚拟机到编译linux,制作根文件系统等等,连虚拟机软件和Ubuntu系统镜像都有。
可以说这套开发板
考虑得非常周到。
然后我就参照《1B开发板用户手册.pdf》编译了linux,制作了根文件系统,最后终
于跑起来,进入了shell。
这里谈谈我的感想 ? 用户手册更像一个工具书
就拿根文件系统来说吧。
Cramfs,Jffs2,Yaffs2的制作步骤都有,这表示该手册很
全面,但是如果是一个初学者的话,给的选择太多不一定是好事。
这也是我想写这篇文档
的原因。
我想linux的配置尽量简单(除了串口驱动以外,其它的比如,网卡,声卡,触
屏等都暂时不需要),根文件系统也尽量简单(手册中的已经很简单了,后面我们就参照
手册),另外为了再简单一点我把根文件系统也选择内存文件系统,内核只下载到内存而
不烧写到flash,同时PMON参数也不修改。
这样做有个好处――任何时候我可以复位进入开发板预装的linux和文件系统。
这便于在我们遇到问题时参考。
? 制作根文件系统的
章节还有点小小的问题需要改进
? 手册中的笔误Busybox配置过程中ionice错写为inoice ? 没有新建目录/root和
/var/log
? 没有新建console和串口设备节点ttyS2
另外,说点题外话,回想以前读大学时,非常想学习嵌入式,但是感觉非常困难。
现
在看来,当时感觉困难的原因是入门太难了。
为什么入门难,弄了很久连环境都没打起来,更别说编译linux,制作根文件系统了。
在这里我想说“朋友们,搭建环境只需要把开发板的工具链解压到指定目录就可以了。
就相当于windows上的绿色软件一样,仅此而已,这比安装vs2021快多了,方便多了”。
既然开发环境搭建起来了,后面就是配置编译linux,制作根文件系统了(先不要管PMON 了,就像电脑一样,很少有人换bios,最多重装系统)。
这也就是本篇文章的任务。
3
1.1. 开发板版本号
LS1B DEMO BOARD Schematic Revision 2.0即版本为2.0
1.2. 工具链版本号
版本为gcc-3.4.6-2f.tar.gz
1.3. 参考文档及其版本号
《1B开发板用户手册》V1.2
4
1.4. 目标
参考《1B开发板用户手册》创建一个最简化的linux和根文件系统。
同时不破坏开发板预装的linux等,并将这个过程记录下来,仅供参考。
这里在明确一下本次任务的详细内容
? PMON不变(不要动PMON,包括PMON环境变量,除了ip地址外)
? LINUX内核配置尽量简单(驱动方面,除了串口外,其它的网口,声卡,触屏都不
要
选上),linux内核也仅仅下载到内存,不要写到flash ? 根文件系统尽量简单(根
文件系统就直接从busybox编译后得到,暂时不移植什么应用),同时这里也选择RAMDISK文件系统,不要写到flash
2. 搭建开发环境
安装虚拟机和Ubuntu网上有很多,当然手册中也讲得很详细,这个就自己解决。
假
设您已经装好了。
另外我用的是red hat 企业版5(手册中用的是Ubuntu),并且直接登录root账户,避免了什么权限的麻烦。
安装工具链手册中已经讲得非常好了,这里直接截图。
5
感谢您的阅读,祝您生活愉快。