我在组件的功能sincos_Q15_asm(),在文件sincos_p5sh.asm与指令如下:

.sect   ".text"
.global _sincos_Q15_asm
.sym    _sincos_Q15_asm,_sincos_Q15_asm, 36, 2, 0
.func   1

在功能工作正常,当我本身测试(组装只),但是当我尝试链接到它,我得到一个链接错误:

undefined                   first referenced
symbol                         in file
---------                   ----------------
sincos_Q15_asm(int, int *) build\pwm3phase.obj

error: unresolved symbols remain

这是非常令人费解给我,因为我,包括我的链接器命令组装文件build\blocks\sincos_p5sh.obj,我已经使用这个OBJ文件的绝对列表abs2000和它说,有一个象征_sincos_Q15_asm。 (下划线前缀是如何工作的组装)

任何建议,我应该下一个解决?

有帮助吗?

解决方案

D'哦!我计算出来 - 我正在使用C ++,忘了包括用于我的功能extern "C"声明:

extern "C" {
extern void sincos_Q15_asm(int16_t theta, int16_t* cs);
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top