SCons 命令详解
4 Dec 2024
Read time: 1 minute(s)
SCons 是一个跨平台的构建系统,被广泛应用于软件开发项目中,支持在 Windows 和 Linux 上使用,且用法相同。本节列示了常用的 SCons 命令和功能。
项目罗列
使用 scons --list-def 命令可以罗列 SDK 中发布的所有项目名称,方便用户查看和管理可用的项目资源。示例如下:
scons --list-def
scons: Reading SConscript files ...
Built-in configs:
0. d12x_demo68-nand_baremetal_bootloader
1. d12x_demo68-nand_rt-thread_helloworld
2. d12x_demo68-nor_baremetal_bootloader
3. d12x_demo68-nor_rt-thread_helloworld
4. d12x_hmi-nor_baremetal_bootloader
5. d12x_hmi-nor_rt-thread_helloworld
6. d13x_demo88-nand_baremetal_bootloader
7. d13x_demo88-nand_rt-thread_helloworld
8. d13x_demo88-nor_baremetal_bootloader
9. d13x_demo88-nor_rt-thread_helloworld
10. d13x_kunlunpi88-nor_baremetal_bootloader
11. d13x_kunlunpi88-nor_rt-thread_helloworld
12. d21x_demo128-nand_baremetal_bootloader
13. d21x_demo128-nand_rt-thread_helloworld
14. g73x_demo100-nor_baremetal_bootloader
15. g73x_demo100-nor_rt-thread_helloworld
使用项目
使用命令 scons --apply-def=[项目索引或名称]
可以选择特定的项目配置进行构建,命令中可以使用项目名称或项目索引完成构建:
scons --apply-def=3
scons: Reading SConscript files ...
Load config from target\configs\d12x_demo68-nor_rt-thread_helloworld_defconfig
scons --apply-def=d12x_demo68-nor_rt-thread_helloworld_defconfig
scons: Reading SConscript files ...
Load config from target\configs\d12x_demo68-nor_rt-thread_helloworld_defconfig
配置项目
使用命令 scons --menuconfig 可调出 menuconfig 图形界面,以便根据需要调整项目设置。
scons --menuconfig
menuconfig GUI 界面示例如下:
构建项目
运行命令 scons 开始构建过程。默认在简洁模式下进行构建,不会输出编译选项等信息。调试时可以使用 scons --verbose 来显示更详细的编译信息,包括编译器选项等。
scons
scons: Reading SConscript files ...
>>> Extract toolchain Xuantie-900-gcc-elf-newlib-mingw ...
清理项目
运行命令 scons --clean 清除上一次编译构建过程中生成的所有临时文件,确保在下一次编译构建时,所有源文件都会被重新编译。
scons --clean
scons -c