[尝试阅读文档并阅读互联网上的其他示例后,我着手为嵌入式CMake指定以下变量。
set(CMAKE_SYSTEM_NAME Generic)
#set(CMAKE_SYSTEM_PROCESSOR arm)
set(CMAKE_SYSTEM_PROCESSOR cortex-m3)
[我已经尝试将arm
和cortex-m3
都作为提供给CMAKE_SYSTEM_PROCESSOR
的值,但是我仍然必须使用以下标志来手动标识要编译的体系结构。
add_compile_options(
-mcpu=cortex-m3
-mthumb
)
我希望这些看似明显的标志会被CMake抽象,并通过指定CMAKE_SYSTEM_PROCESSOR
的值来拾取。
是我弄乱了明显的东西,还是应该在CMake工具链文件中利用不同的变量?
您的假设是错误的。所有手臂处理器都不同。
仅举一个示例,臂芯可以具有:
因此,不存在单个M3臂内核,每个硬件制造商的实现都会有所不同。