U-boot配置
make O=output ok6410a_mini_defconfig
// 在配置的时候 不需要指定 ARCH(因为defconfig有写) 与 CROSS_COMPILE(因为现在并不需要,build的时候才需要)
// 如果写了CROSS_COMPILE,会去检查CROSS_COMPILE , 然后build的时候还是需要写
// 第一次用arm-gcc 的时刻, 编译时 的 CC lib/asm-offsets.s
make[1]: Entering directory '/home/suws/ok6410/system-new/u-boot/output'
cc -Wp,-MD,scripts/basic/.fixdep.d -Iscripts/basic -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11 -o scripts/basic/fixdep ../scripts/basic/fixdep.c
GEN ./Makefile
rm -f .tmp_quiet_recordmcount
ln -fsn .. source
/bin/bash ../scripts/mkmakefile
.. . 2021 01
GEN ./Makefile
HOSTCC scripts/kconfig/conf.o
cc -Wp,-MD,scripts/kconfig/.conf.o.d -Iscripts/kconfig -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11 -c -o scripts/kconfig/conf.o ../scripts/kconfig/conf.c
YACC scripts/kconfig/zconf.tab.c
bison -oscripts/kconfig/zconf.tab.c -t -l ../scripts/kconfig/zconf.y
LEX scripts/kconfig/zconf.lex.c
flex -oscripts/kconfig/zconf.lex.c -L ../scripts/kconfig/zconf.l
HOSTCC scripts/kconfig/zconf.tab.o
cc -Wp,-MD,scripts/kconfig/.zconf.tab.o.d -Iscripts/kconfig -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11 -I../scripts/kconfig -c -o scripts/kconfig/zconf.tab.o scripts/kconfig/zconf.tab.c
HOSTLD scripts/kconfig/conf
cc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/zconf.tab.o
scripts/kconfig/conf --defconfig=arch/../configs/ok6410a_mini_defconfig Kconfig
#
# configuration written to .config
#
make[1]: Leaving directory '/home/suws/ok6410/system-new/u-boot/output'
linux配置
HOSTCC scripts/basic/fixdep
gcc -Wp,-MMD,scripts/basic/.fixdep.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -o scripts/basic/fixdep scripts/basic/fixdep.c
HOSTCC scripts/kconfig/conf.o
gcc -Wp,-MMD,scripts/kconfig/.conf.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -c -o scripts/kconfig/conf.o scripts/kconfig/conf.c
HOSTCC scripts/kconfig/confdata.o
gcc -Wp,-MMD,scripts/kconfig/.confdata.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -c -o scripts/kconfig/confdata.o scripts/kconfig/confdata.c
HOSTCC scripts/kconfig/expr.o
gcc -Wp,-MMD,scripts/kconfig/.expr.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -c -o scripts/kconfig/expr.o scripts/kconfig/expr.c
LEX scripts/kconfig/lexer.lex.c
flex -oscripts/kconfig/lexer.lex.c -L scripts/kconfig/lexer.l
YACC scripts/kconfig/parser.tab.[ch]
bison -o scripts/kconfig/parser.tab.c --defines=scripts/kconfig/parser.tab.h -t -l scripts/kconfig/parser.y
HOSTCC scripts/kconfig/lexer.lex.o
gcc -Wp,-MMD,scripts/kconfig/.lexer.lex.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -I ./scripts/kconfig -c -o scripts/kconfig/lexer.lex.o scripts/kconfig/lexer.lex.c
HOSTCC scripts/kconfig/parser.tab.o
gcc -Wp,-MMD,scripts/kconfig/.parser.tab.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -I ./scripts/kconfig -c -o scripts/kconfig/parser.tab.o scripts/kconfig/parser.tab.c
HOSTCC scripts/kconfig/preprocess.o
gcc -Wp,-MMD,scripts/kconfig/.preprocess.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -c -o scripts/kconfig/preprocess.o scripts/kconfig/preprocess.c
HOSTCC scripts/kconfig/symbol.o
gcc -Wp,-MMD,scripts/kconfig/.symbol.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -c -o scripts/kconfig/symbol.o scripts/kconfig/symbol.c
HOSTCC scripts/kconfig/util.o
gcc -Wp,-MMD,scripts/kconfig/.util.o.d -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 -c -o scripts/kconfig/util.o scripts/kconfig/util.c
HOSTLD scripts/kconfig/conf
gcc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/confdata.o scripts/kconfig/expr.o scripts/kconfig/lexer.lex.o scripts/kconfig/parser.tab.o scripts/kconfig/preprocess.o scripts/kconfig/symbol.o scripts/kconfig/util.o
scripts/kconfig/conf --defconfig=arch/arm/configs/ok6410A_sdboot_mini_defconfig Kconfig
#
# configuration written to .config
#
u-boot 和 linux 配置 的区别
配置需要填充的环境变量
u-boot 配置不需要填充 ARCH 与 CROSS_COMPILE
u-boot 编译需要配置 CROSS_COMPILE
linux 配置需要填充 ARCH(这样才能找到defconfig) 与 CROSS_COMPILE (填充后会改变生成的.config,.config中会填充CROSS_COMPILE 的信息CONFIG_CC_VERSION_TEXT)
linux 编译也需要配置 ARCH 与 CROSS_COMPILE
配置运行过程
相同点:
都是生成 scripts/kconfig/conf
并用命令 scripts/kconfig/conf --defconfig=/path_to_defconfig/ok6410a_mini_defconfig Kconfig 生成 .config
不同点
u-boot 的 scripts/kconfig/conf 比较简单
cc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/zconf.tab.o
linux的 scripts/kconfig/conf 比较复杂
gcc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/confdata.o scripts/kconfig/expr.o scripts/kconfig/lexer.lex.o scripts/kconfig/parser.tab.o scripts/kconfig/preprocess.o scripts/kconfig/symbol.o scripts/kconfig/util.o
上一篇:OK6410A 开发板 (三) 8 u-boot-2021.01 boot 解析 SPL镜像运行部分
下一篇:OK6410A 开发板 (六) 3 OK6410A linux-5.11编译分析
推荐阅读最新更新时间:2024-11-12 20:58
设计资源 培训 开发板 精华推荐
- C5137695_CN3722多类型电池充电方案验证板
- AM6TW-4803SZ 3.3V 6 瓦单路输出 DC/DC 转换器的典型应用
- LT8330HDDB 4V 至 36V 输入、12V SEPIC 转换器的典型应用电路
- EV-ADF4360-2EB1Z,用于 ADF4360-2 集成 PLL 和 VCO 频率合成器的评估板
- AM2F-0509SH30Z 9V 2W DC/DC 转换器的典型应用
- MAXREFDES1182:采用MAX17595的3.5W 3.3V离线反激转换器
- 使用 TB62777FG 8 通道恒流 LED 驱动器,3.3V 和 5V 电源电压操作的 LED 动态照明的典型应用
- 使用具有内部 PGA 的 AD7192、24 位 Sigma-Delta 模数转换器
- 使用MAX15005用于LED应用系统的供电和驱动
- AN54,采用 LTC1148 4-14V、3.3V/1A 降压转换器和表面贴装技术的应用电路