uboot shell makefile 目录结构 编译和配置

本文详细介绍了如何在三星SMDKV210开发板上移植U-Boot,从获取源码到配置、编译以及最终的文件输出。过程中涉及了交叉编译工具链的检查、Makefile的配置、源码分析以及shell脚本的使用,还涵盖了编译过程中的关键步骤和注意事项,对于嵌入式开发人员具有一定的参考价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

soc(三星)会下载uboot源码移植做出一款开放板smdkv210,

具体的供应商会购买smdkv210然后进行裁剪得到自己的开发版x210.

uboot获取有三个途径,uboot官方,soc官方,供应商的

配置 make x210_sd_config

编译:编译得到uboot.bin

第一步:检查交叉编译工具链:arm-linux-gcc是否对 第二步:检查uboot 主makefile是否正确

ls -l (du -h)

源目录分析:

arm_config.mk其他文件会去include

Makefile:uboot的主Makefile

mkconfig 配置脚本

文件夹:

board 开发板 board下有vendor

common cmd开头的,env开头的

cpu soc相关的 包含start.s

drivers:uboot驱动是内核中驱动的一部分

include:头文件

lib_开头的(lib_arm和lib_generic)架构相关的库文件

libfdt:设备树

原地编译 专门指定一个输出目录(make O = 或者export BUILD_DIR=)

shell

source xx.sh 用source指令来运行sh 或者bash xx.sh

echo 输出字符串可以不佳“” 但不加双引号不能输出转义字符 转义字符前要加\

变量引号 $var ${var} 某些情况只能用${var}

例如:var = "hello"

echo "$varworld" 只会输出空 echo "${var}world"会输出helloworld 

shell中执行Linux命令

1:直接调用 mkdir dir  touch cd 

2:反引号:适用于得到命令的返回值

选择分支if

判断文件是否存在-f if [ -f a.c ]

目录-d

字符串是否为空 -z

字符串 "str1" =  "str2"

判断数字:-eq -gt -lt -ge -le

"-o"表示逻辑与或

循环:for while

for循环

for i in 1 2 3 4 5

do 

        echo $i

done

i=1

j=1

while[$i -lt $j ]; do

        echo $i;

        i=$(($i + 1))

done >a.c

传参数

source xx.sh aa bb cc

echo $#(参数个数) $0 $1 $2

 

第一行:#!/bin/sh

| 管道

sed:替换字符串(sed -e s/i.86/i386)把i686替换为i386

tr:

Makefile

伪目标:(clean:)

引用其他makefile include

静默执行(因为makefile默认会打印出命令和运行结果,如果不想看到命令,就用静默执行)@        echo

赋值:

1.= 最后一次赋值的值 前面 后面都要看(要看最后一次)

2.:= 只用往前看 

3.?= 如果前面的变量没有赋值,则执行该处赋值;如果没有赋值了,则忽略该处

4.+=把这次的值加到原来的值后面

环境变量:都用大写 作用:所有makefile共享的全局变量

1.=和:=, =在后面找 :=在前面找

2.export 导出为环境变量

3.执行shell中的命令 1.var = `pwd` 2.var = $(shell pwd)

通配符

* 任意个字符

?1个任意字符

[] echo[12].c 1.c 2.c

% 表示任意多个字符,但是是用于规则通配符

自动变量:

1.$@ 目标文件名

2.$< 依赖文件名(第一个文件名)

3.$^ 依赖的文件集合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值