教材学习内容总结
学习Linux交叉开发环境的搭建和bootloader的配置移植及编译
1.安装arm-linux-gcc交叉编译工具
1.1 获取交叉编译工具的源代码
复制链接http://labfile.oss.aliyuncs.com/courses/811/gcc-3.4.6-glibc-
2.3.6.tar.bz2 到工具栏的剪切板中,然后保存:
输入wget命令,然后空格,在空格后右击粘贴,回车,就可将交叉编
译工具下载到实验楼环境。
1.2 解压缩交叉编译工具源码
1.3 测试arm-linux-gcc是否可运行
运行结果显示找不到该文件或目录,主要原因是当前系统环境是x86_64位,而arm-
linux-gcc是32位,需要解决64位系统下安装32位软件的问题。
1.4 解决64位系统下安装32位软件的问题
运行以下命令:
安装完成后再次运行./arm-linux-gcc,提示arm-linux-gcc:no input files,意
思是arm-linux-gcc命令没有输入文件,说明该文件在当前环境下可用
1.5 将arm-linxu-gcc加入环境变量PATH中
执行export命令将arm-linux-gcc所在目录临时加入PATH中:
上述方法是临时进入PATH,如果关闭实验环境或者关闭终端,命令失效,需要重新
export。
2、bootloader的配置、移植和编译
2.1获取u-boot源码
将链接http://labfile.oss.aliyuncs.com/courses/811/u-boot-1.3.2.tar.bz2
粘贴入剪切板,并在终端里执行wget命令,将u-boot-1.3.2.tar.bz2下载到当前目录
,并使用tar命令解压缩。
2.2.建立板级支持包
在board目录下,每一块开发板都有一个对应的目录,因此我们需要为我们的开发板建
立一个目录,名字叫做eduk2410,并创建相应的文件:
将eduk2410目录下的smdk2410.c文件更名为eduk2410.c:
并将eduk2410.c文件中的gpio->GPBCON = 0x00044555改为gpio->GPBCON =
0x0004455A:
为了使编译的时候能把这个文件编译进去,需要修改相应的Makefile:
每个开发板都有一个自己的配置文件,如smdk2410开发板的配置文件为
include/configs/smdk2410.h,我们也需要为我们的开发板建立自己的配置文件。可
以直接从 smdk2410开发板的配置文件中修改而来。因此我们先把smdk2410的配置文
件复制到我们开发板的配置文件当中:
然后,修改Makefile,使得可以配置我们的开发板:
2.3.编译U-Boot
首先运行如下命令配置U-Boot:
然后运行make命令编译
课后作业
其他
本周在实验楼学习到了BootLoader配置移植及编译实验,熟练掌握了解压以及编译,对Linux编译命令有了更深的理解。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 4500行 | 30篇 | 300小时 | |
第一周 | 200/200 | 2/2 | 20/20 | 学会Linux基本命令 |
第二周 | 500/500 | 4/4 | 40/40 | 学会gcc 和gdb |
第三周 | 1000/1000 | 7/7 | 60/60 | 学会 BootLoader配置移植及编译实验 |
第四周 | /1300 | /9 | /90 |
参考资料
- 《嵌入式应用程序设计》学习指导