linker - 错误 L6218E 未定义符号 _asm(来自 main.o)
问题描述
我正面临链接器错误。我在 Keil µVision5 中编写了以下内联汇编代码,
_asm("NOP");
_asm("NOP");
我收到以下错误:
.\RAM\STM32F439_Template.axf: Error: L6218E: Undefined symbol _asm (referred from main.o).
我在程序中包含了头文件“stm325439xx.h”。
谁能帮我解决这个错误?谢谢你。
解决方案
要使此代码正常工作,您需要包含_asm
定义宏的标头,或者如果它内置在某些编译器中,则在项目设置中选择正确的编译器(Keil 工具支持多种不同的编译器)。
但是,可移植的解决方案是不使用此代码,而是包含"stm32f4xx.h"
然后使用__NOP()
,这对于许多编译器都是正确的。
推荐阅读
- json - 将变量插入 json 有效负载(松弛 webhook)问题的 Bash 脚本
- javascript - 通过 wix 代码提供 HTML 图表时的事件处理程序问题
- python - 有人可以用python和google sheet api帮我解决这个问题吗?
- javascript - 我用 Javascript 设置的一个 cookie 总是为空。其余的读得很好
- debugging - 修改符号文件对源代码文件的引用
- three.js - 具有不同三角形方向的 THREE.js 中的平滑阴影
- azure - 如何在 Azure 搜索中实现成对查询相关的学习排名?
- javascript - 使用jquery变量让不同的DIV出现和消失
- typescript - 迭代接口/类属性并将它们添加到数组中 - TypeScript 3
- html - Boostrap from-group 风格被划掉