软件 | 说明 |
---|---|
Python |
SCons PyOCD Runtime |
SCons | Build Tools |
Arm GNU Toolchain | Toolchain |
PyOCD | Debug Tool |
STM32CubeMX | Debug Tool |
python --version
---
Python 3.10.5
scons -v
---
SCons by Steven Knight et al.:
SCons: v4.3.0.559790274f66fa55251f5754de34820a29c7327a, Tue, 16 Nov 2021 19:09:21 +0000, by bdeegan on octodog
SCons path: ['C:\\Python310\\lib\\site-packages\\SCons']
Copyright (c) 2001 - 2021 The SCons Foundation
arm-none-eabi-gcc -v
---
gcc version 12.2.0 (Arm GNU Toolchain 12.2.MPACBTI-Bet1 (Build arm-12-mpacbti.16))
pyocd -V
---
0.34.1
CubeMX
->Access to MCU selector
->STM32F103RCT6
|
Status |
Project Name
= firmware
Project Location
= STM32Cube-Flashing
Toolchain / IDE
= Makefile
tree
---
STM32Cube-Flashing
└─firmware
├─Core
│ ├─Inc
│ └─Src
└─Drivers
Unable to cross compile for ARM with Scons because /Fo is added
需要指定构建环境用到的工具 Appendix C. Tools
SConstruct
env = Environment(ENV=os.environ, tools=['gcc', 'g++', 'gnulink', 'ar', 'as'])
依照 Makefile
的内容配置 Environment
Working Directory
= firmware
scons
---
scons: done building targets.
C_Src_Dirs = [
'Core/Src',
]
C_Glob_Srcs = []
for _dir in C_Src_Dirs:
C_Sources += Glob(f'{_dir}/*.c')
使用 Glob
简化多文件编译