一,新建工程后,新建一个名为“settings.json”的文件
其中"search.exclude"里面是需要在搜索结果中排除的文件或者文件夹,"files.exclude"是左
侧工程目录中需要排除的文件或者文件夹
settings.json 文件代码
{ "search.exclude":
{"**/node_modules": true,
"**/bower_components": true,
},
"files.exclude":
{"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
}
}
二、makefile文件
1.origin 用于告诉你变量是哪来的,语法为:
$(origin <variable>)
2.sym 命令分为“quiet_cmd_sym”和“cmd_sym”两个版本,这两个命令的功能都是一样的,
区别在于 make 执行的时候输出的命令不同。quiet_cmd_xxx 命令输出信息少,也就是短命令,
而 cmd_xxx 命令输出信息多,也就是完整的命令。
如果变量 quiet 为空的话,整个命令都会输出。
如果变量 quiet 为“quiet_”的话,仅输出短版本。
如果变量 quiet 为“silent_”的话,整个命令都不会输出
设置 V=0 或者在命令行中不定义 V 的话,编译 uboot 的时候终端中显示的短命令,但是还是会有命令输出,有时候我们在编译 uboot 的时候不需要输出命令,这个时候
就可以使用 uboot 的静默输出功能。编译的时候使用“make -s”即可实现静默输出
3.uboot 支持代码检查,使用命令“make C=1”使能代码检查,检查那些需要重新编译的文件。“make C=2”用于检查所有的源码文件
4.在 uboot 中允许单独编译某个模块,使用命令“make M=dir”即可
5.编 译 uboot 的 时 候 需 要 设 置 目 标 板 架 构 和 交 叉 编 译 器 ,“ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-”就是用于设置 ARCH 和 CROSS_COMPILE
6.主 Makefile 会调用文件 scripts/Kbuild.include 这个文件,使用“include”包含了文件 scripts/Kbuild.include,此文件里面定义了
很多变量
7.交叉编译工具变量设置
AS = $(CROSS_COMPILE)as
# Always use GNU ld
ifneq ($(shell $(CROSS_COMPILE)ld.bfd -v 2> /dev/null),)
LD = $(CROSS_COMPILE)ld.bfd
else
LD = $(CROSS_COMPILE)ld
endif
CC = $(CROSS_COMPILE)gcc
CPP = $(CC) -E
AR = $(CROSS_COMPILE)ar
NM = $(CROSS_COMPILE)nm
LDR = $(CROSS_COMPILE)ldr
STRIP = $(CROSS_COMPILE)strip
OBJCOPY = $(CROSS_COMPILE)objcopy
OBJDUMP = $(CROSS_COMPILE)objdump
8. 命令 make xxx_defconfig 执行流程 , conf 是主机软件
9. make命令的流程
三、uboot函数调用路径
函数 relocate_vectors 用于重定位向量表
四、bootz命令