将mdk工程转为cmake工程探索(三)

本文介绍了作者在将MDK工程转换为CMake工程过程中遇到的问题及解决思路,包括GPIO初始化定义问题、启动文件的处理以及汇编文件在CMake中的编译。在解决汇编文件编译问题时,作者发现需要通过指定编译器,最终通过查阅CMake官方文档找到了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本来想终结这一系列,不过最近使用keil开发后又有些心得,因此打算利用空闲时间再将它继续下去

上篇回顾:


注意到,错误信息里包含了很多这样的信息:

/home/b/workspace/stm32/share/usart.c:91:3: error: unknown type name 'GPIO_InitTypeDef'    
GPIO_InitTypeDef GPIO_InitStructure; 
  • 很明显,GPIO InitTypeDef 是有定义的,就在stm32f10x_gpio.c里,这时候,想起了keil开发时要设置的define。于是,在led/CMakeLists.txt里加上一行
    add_definitions(-DUSE_STDPERIPH_DRIVER -DSTM32F10X_HD)

  • 然后 cd build&&cmake ..&make
    wow,进度条一路到了100%,这是要成功了吗?不又冒出个错误

错误五

arm-none-eabi-gcc: error: unrecognized command line option '-rdynamic'

src/CMakeFiles/led.hex.dir/build.make:105: recipe for target ‘src/led.hex’ failed
make[2]: *</

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值