unresolved external 问题及解决记录

时间:2025-04-16 11:01:19

环境

Infineon Tricore TC387
编译工具:Tasking

编译出错:

ltc E106: unresolved external: Fls_17_Dmu_Mainfunction - (Rte_Application_Core0_QM.o)
ltc F019: unrecoverable error: fatal link error
amk E452: ["makefile" 48/0] target 'TC38X_Demo.elf' returned exit code 1
amk E451: make stopped

原因分析

翻译过来是:未解决的外部引用。也就是意味着需要外部函数,但明显,编译器未找到。
核实了一下外部引用的文件。文件是存在的。但为什么外部文件在,也引用了。该包含的头文件也包含了,还会显示没有这个外部引用呢?

这就是血泪教训了友友们。赶紧查一查,这个你手写的函数,是不是某个字母的大小写,没写对!!!

破案

本案例中最终的原因,就是因为一个字母引发的血案。
报错的位置,报告的是
Fls_17_Dmu_Mainfunction未找到。实际上外部文件定义的函数接口是:
Fls_17_Dmu_MainFunction.
差到哪里了。就查到字母 f 是大写的,本人手动写成小写了。呜呜呜~
给大家提供个错误案例,以后能cv操作,就别手写了吧