STM32 CMAKE
cmake_minimum_required(VERSION 3.10)
project(stm32test)
##head files
include_directories("/home/user/stm32/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include")
set(SRC_FILES src/main.c)
#cross compiler
set(CMAKE_SYSTEM_NAME Linux) #设置目标系统名字
set(CMAKE_SYSTEM_PROCESSOR arm)
set(CMAKE_C_COMPILER arm-none-eabi-gcc)
set(CMAKE_CXX_COMPILER arm-none-eabi-gcc)
#link_directories("./rtthread/lib")
#link_libraries(librtthread.a)
# 设置编译选项
add_definitions("-Os -g3 -Wall -Werror --specs=nano.specs -Wl,--gc-sections -T ./ldscripts/gcc_stm32f1x_64k.ld")
# 设置可执行程序
add_executable(${PROJECT_NAME}.elf ${SRC_FILES})
# 生成二进制文件
add_custom_target(${PROJECT_NAME}.bin ALL
COMMAND arm-none-eabi-objcopy -O binary $<TARGET_FILE:${PROJECT_NAME}.elf> ${PROJECT_NAME}.bin
COMMENT "Creating ${PROJECT_NAME}.bin"
DEPENDS ${PROJECT_NAME}.elf)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?