明远智睿MY-SAMA5 Linux-3.18 编译手册(2)

2019年03月04日 17:29    发布者:myzr123
【接上一章节明远智睿MY-SAMA5 Linux-3.18 编译手册(1)】

3.3  目标文件
1)目标文件
编译完成后会在源码的binaries目录下产生我们需要的目标文件。
通过ls命令可以看到,其中mysama5ek200-dataflashboot-uboot-3.7.2.bin 即是我们需要的文件。
$ ls binaries/

2)重命令目标文件
我们在烧录的时候需要使用到这些目标文件。为了烧录的方便,我们需要将目标文件修改为我们需要的文件名,即bootstrap-mysama5ek200.*。
$ cd binaries/
$ rename 's/mysama5ek200-dataflashboot-uboot-3.7.2/bootstrap-mysama5ek200/' *
$ ls -1
http://sucimg.itc.cn/sblog/j609f229943002a26309a226a93fd4e33
3)保存目标文件
将bootstrap-mysama5ek200.* 保存。

4  u-boot编译
4.1  准备源码
1)下载源码
文件名:u-boot-at91-linux4sam_4.7.tar.bz2
U-Boot在Atmel AT91 SoC上作为第三阶段引导加载程序。它负责配置主要接口,并引导Linux系统。
2)将源码复制到工作目录
这一步自己采取合适的方式将u-boot源码复制到“~/my-sama5/02_source”。也可以参照“2.3 常用功能演示”。
3)解压源码
进入工作目录
$ cd ~/my-sama5/02_source/
http://sucimg.itc.cn/sblog/j82341cd6cd4d6e3593a895b264033f63
执行解压命令
$ tar jxf u-boot-at91-linux4sam_4.7.tar.bz2
http://sucimg.itc.cn/sblog/j0482862394664e56987fee1a26793461

4.2  编译
1)进入u-boot源码目录
$ cd ~/my-sama5/02_source/u-boot-at91-linux4sam_4.7/
http://sucimg.itc.cn/sblog/je31c9d3edbce65a75a757cf7985a12e5
2)使编译配置文件生效
$ source ~/my-sama5/03_tools/gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf.config
3)清除代码中可能存在的临时文件
$ make distclean
http://sucimg.itc.cn/sblog/jf9cf9a0bee3932282c03bdf0b0b25e20
4)生成配置文件
$ make mysama5ek200_defconfig
http://sucimg.itc.cn/sblog/jbd36bd0ad6bc4cfc1fc002c830a7b3e3
5)执行编译
$ make –j4
http://sucimg.itc.cn/sblog/j187bff05d3808c835aeb151438256093
6)编译完成
http://sucimg.itc.cn/sblog/j0bd61de42da5ff3cf4194279945704ab

4.3  目标文件
编译完成后会在源码的目录下产生我们需要的目标文件。
通过ls命令可以看到。其中u-boot.bin 即是我们需要的文件。
$ ls u-boot* -1
http://sucimg.itc.cn/sblog/j272c6079a0bfc85db29b3d57838f253f
2)重命令目标文件
我们在烧录的时候需要使用到这些目标文件。为了烧录的方便,我们需要将目标文件修改为我们需要的文件名,即uboot-mysama5ek200.bin。
$ mv u-boot.bin uboot-mysama5ek200.bin
$ ls uboot-mysama5ek200.bin
http://sucimg.itc.cn/sblog/jb439493d3434d5a76a200fc584b3d3f2
3)保存目标文件
将uboot-mysama5ek200.bin 保存。

5  内核编译
5.1  准备源码
1)下载源码
文件名:linux-at91-linux4sam_4.7.tar.bz2
2)将源码复制到工作目录
这一步自己采取合适的方式将内核源码复制到“~/my-sama5/02_source”。也可以参照“2.3 常用功能演示”。
3)解压源码
进入工作目录
$ cd ~/my-sama5/02_source/
http://sucimg.itc.cn/sblog/j3dca525379627499a117b8dc258c9220
执行解压命令
$ tar jxf linux-at91-linux4sam_4.7.tar.bz2
http://sucimg.itc.cn/sblog/j92b0ee7ff7e2033c05450b4dd421f1a6

5.2  编译
1)进入内核源码目录
$ cd ~/my-sama5/02_source/linux-at91-linux4sam_4.7/
http://sucimg.itc.cn/sblog/j351332f16c454b3036325b8ad6e0c6e1
2)使编译配置文件生效
$ source ~/my-sama5/03_tools/gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf.config
3)清除代码中可能存在的临时文件
$ make distclean
http://sucimg.itc.cn/sblog/jc4ffc69727ac96d9b8662daa80870463

5.2.1  编译内核文件
1)生成内核配置文件
$ make ARCH=arm mysama5ek200_defconfig
http://sucimg.itc.cn/sblog/jc861c72c140dc2d0df44a0a7fa9250c6
2)执行内核文件编译命令
$ make -j4 ARCH=arm zImage
http://sucimg.itc.cn/sblog/j4aec217640d8bfaad64cf1daff7d01b9
3)内核文件编译完成
http://sucimg.itc.cn/sblog/j87011aa26c0a32c458d9fdd57aca4930
4)内核目标文件
$ ls arch/arm/boot/zImage
http://sucimg.itc.cn/sblog/j511b98bc8d672ee202b4dc0373bceabc

5.2.2  编译设备树文件
1)执行设备树文件编译命令
$ make ARCH=arm mysama5ek200-d36.dtb
http://sucimg.itc.cn/sblog/jbe97668fc48887b6789e545d20329f3d
2)设备树目标文件
$ ls arch/arm/boot/dts/mysama5ek200-d36.dtb
http://sucimg.itc.cn/sblog/je52980b73850b891a6855f33aefb486f

【下章节为明远智睿MY-SAMA5 Linux-3.18 编译手册(3)】