x210官方uboot配置编译时实践

2.3.1、X210官方uboot配置编译实践

2.3.1.1、找到官方移植好的uboot(BSP概念)

(1)源头的源代码是uboot官网下载的。这个下载的源代码可能没有你当前使用的开发板的移植,甚至找不到当前开发板使用SoC对应的移植版本。

(2)SoC厂商在推出一款SoC后厂商的工程师会去uboot官网下载一个uboot,根据自己的SoC进行第一步移植,移植的目标是厂商推出的开发板(譬如三星的S5PV210芯片厂商出的开发板就叫SMDKV210)。所以三星的工程师移植的uboot是根据他们自己的SMDKV210开发板移植的。

(3)具体的开发板供应商(譬如x210的生产商深圳市九鼎科技)首先购买三星的SMDKV210开发板,然后进行裁剪(把无用的接口功能裁剪掉,配置降低一下,某些配置会被替换)。硬件替换和裁剪之后生成的新的开发板(譬如x210)和三星官方的SMDKV210有所不同,因此uboot也不同。但是SoC是相同的,所以相似度至少有60%。所以具体开发板供应商会以SMDKV210中一直的uboot为蓝本来一直得到自己开发板的一个uboot一直。我们买的x210开发板时,厂商光盘中带的BSP中的uboot源码就是他一直过的。

总结:uboot可以有三种获取途径:uboot官方、soc官方、具体开发板的官方。

2.3.1.2、在linux原生目录下配置编译

(1)x210一直过的uboot在开发板光盘的BSP中

(2)BSP就是board support package(板级支持包,一般有开发板供应商提供,里面的内容就是这个开发板的所有相关的源代码、文档、教程等)

(3)将整个BSP打包文件弄到linux的原生目录中去解压分析,不要子啊windows中的共享文件夹中解压开。(除非你的代码只在windows下分析,而不去编译,如果想要编译工程就一定不要在windows共享文件夹下,否则会出错)

(4)tar -jxvf qt_x210v3 130807.tar.bz2

(5)我们在linux下维持一份uboot,在windows下也维持一份uboot,在我们没有开始任何工作之前,这两份uboot内容一样的,都是九鼎官方的uboot内容。我们这样做的目的是:在linux下进行编译,在windows下进行代码分析和观看。(windows下有很好的 工具辅助我们看代码,编辑嗲吗,在linux下编译和看代码都很麻烦.........)

2.3.1.3、配置

(1)uboot和linux kernel等复杂项目,都不能直接编译,都要先配置才能编译

(2)uboot也要先配置,配置的方法是:首先cd进入uboot源码的根目录,然后在根目录下执行:make x210_sd_config。执行配置命令后如果出现:configuring for x210_sd board....

说明配置好了,如果不是这个是别的说明配置出错了。

2.3.1.4、编译得到uboot.bin

(1)编译之前一定要注意检查arm-linux-gcc对不对,检查分为2步

第一步:检查当前编译环境中有没有安装合适的arm-linux-gcc。我们装的是arm-2009q3,因为这个是三星官方、九鼎官方开发uboot时候使用的。

第二步:检查当前目录下(uboot根目录)的Makefile中编译器的设置是否正确。在工程的总Makefile中会设置交叉编译工具链的路径和名字,必须确保和我们自己装的

(2)在确保了以上两点之后,即可进行编译。编译很简单,直接make即可。或者可以make -j4 (多线程编译,主机如果是多核电脑,可以尝试多线程编译,会快一些)

时间: 2024-11-08 03:08:23

x210官方uboot配置编译时实践的相关文章

(九)uboot配置编译、源码分析

一.X210官方uboot配置编译实践1.找到官方移植好的uboot(BSP概念)(1)源头的源代码是uboot官网下载的.这个下载的源代码可能没有你当前使用的开发板的移植,甚至找不到当前开发板使用的SoC对应的移植版本.(2)SoC厂商在推出一款SoC后,厂商的工程师会去uboot官网下载一个uboot,根据自己的SoC进行第一步的移植,移植的目标是厂商推出的开发板.(譬如三星的S5PV210芯片厂商出的开发板就叫SMDKV210).所以三星的工程师移植的uboot是根据他们自己的SMDKV2

u-boot配置/编译过程

1. u-boot配置过程 make xxx.config MKCONFIG    := $(SRCTREE)/mkconfig export MKCONFIG ----->>执行mkconfig 1).确定开发板名称BOARD_NAME . CONFIG_NAME="${1%_config}" [ "${BOARD_NAME}" ] || BOARD_NAME="${1%_config}" 2).创建到平台/开发板相关的头文件的链接

uboot配置和编译过程详解【转】

本文转载自:http://blog.csdn.net/czg13548930186/article/details/53434566 uboot主Makefile分析1 1.uboot version确定(Makefile的24-29行) Makefile代码部分: [plain] view plain copy VERSION = 1 PATCHLEVEL = 30 SUBLEVEL = 4 EXTRAVERSION = U_BOOT_VERSION = $(VERSION).$(PATCHL

2.4、uboot配置和编译过程详解

2.4.1.uboot主Makefile分析1 2.4.1.1.uboot version分析 (1)uboot版本号分为3个级别: VERSION:主版本号 PATCHLEVEL:次版本号 SUBLEVEL:再次版本号 EXTRAVERSION:另外附加的版本信息 这四个用.隔开共同构成了最终的版本号. (2)Makefile中版本号最终生成了一个变量U_BOOT_VERSION,这个变量记录了Makefile中配置的版本号 (3)include/version_autogenerated.h

编译时MSIL注入--实践Mono Cecil(1)

原文:编译时MSIL注入--实践Mono Cecil(1) 紧接上两篇浅谈.NET编译时注入(C#-->IL)和浅谈VS编译自定义编译任务—MSBuild Task(csproject),在第一篇中我们简单研究了c#语法糖和PostSharp的MSIl注入,紧接第二篇中我们介绍了自定义MSBuild编译任务(记得有位老兄发链接用 MSBuild自动发布Silverlight xap ,我想说的我做的是自定义编译任务,不是什么发布,MSBuild本就是一个发布工具).之所以在此前介绍编译Task是

u-boot配置和编译过程详解

备注:分析的是OK210开发板自带的uboot_smdkv210,可能有些部分和其他版本不太一样,但是原理都类似. 编译u-boot的步骤 make forlinx_linux_config make 首先生成配置文件,然后编译源码,依次看看这些命令都干了些什么事情 配置过程 #forlinx add forlinx_linux_config : unconfig @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110 li

uboot配置和编译过程详解

一.uboot主Makefile分析 1.uboot version确定(Makefile的24-29行) include/version_autogenerated.h文件是编译过程中自动生成的一个文件,所以源目录中没有,但是编译过后的uboot中就有了 2.HOSTARCH和HOSTOS HOSTARCH:表示主机的CPU的架构,值会影响后面的CROSS_COMPILE环境变量的值.HOSTOS:主机 3.静默编译(50-54行) 不希望看到这些编译信息,就后台编译即可.这就叫静默编译. 4

内核配置编译

内核配置 通过在 make menuconfig 生成的菜单上做完选择,生成 .config 文件 在编译时先通过 .config 文件生成 include/config/auto.conf 和 include/linux/autoconf.h 再编译 include/config/auto.conf 在顶层 Makefile 中使用 include/linux/autoconf.h 在内核源码中使用 *******注意: 在 .config 文件生成相应文件的过程中需要内核中的 Kconfig

嵌入式linux开发uboot移植(七)——三星官方uboot的移植

嵌入式linux开发uboot移植(七)--三星官方uboot的移植 友善之臂Smart210开发板是基于三星SMDKV210评估板裁剪.调整而来的.因此三星官方发布的基于SMDKV210评估板的uboot是移植uboot到Smart210开发板的最合适uboot版本.本文将SMDKV210的uboot移植到Smart210开发板.Smart210开发板的配置如下: SoC:Samsung S5PV210 SDRAM:512MB DDR2 RAM FLASH存储:2G MLC NAND Flas