*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL是什么问题
时间: 2023-06-27 12:06:03 浏览: 162
这个警告通常在编译时出现,它表示某个函数或变量在代码中被引用,但是在链接时未能找到定义。这通常是由于以下原因之一导致的:
1. 函数或变量的定义在其他源文件中,但是该源文件没有被链接到项目中。
2. 函数或变量的定义在库文件中,但是该库文件没有被正确链接到项目中。
3. 函数或变量的定义被删除或者注释掉了。
要解决这个问题,可以尝试以下几种方法:
1. 确认所有需要链接的源文件和库文件都已正确添加到项目中。
2. 确认函数或变量的定义在正确的源文件或库文件中,并且已被正确地编译。
3. 检查代码中是否存在拼写错误或语法错误,这有可能导致函数或变量无法被正确识别。
4. 如果使用了静态链接库,可以尝试重新生成该库文件并重新链接项目。
5. 如果使用动态链接库,可以尝试将库文件复制到正确的位置或重新安装库文件。
相关问题
*** warning l2: reference made to unresolved external
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL是一个编译警告,表示在代码中引用了一个未解析的外部符号[^1]。这通常发生在链接阶段,当编译器无法找到某个函数或变量的定义时会出现这个警告。
这个警告通常是由以下几种情况引起的:
1. 缺少库文件:如果代码中引用了某个函数或变量,但是缺少了相应的库文件,编译器就无法找到定义,从而产生警告。
2. 函数或变量未定义:如果代码中引用了某个函数或变量,但是在代码中没有找到相应的定义,编译器也会产生这个警告。
为了解决这个问题,你可以采取以下几个步骤:
1. 确保引用的函数或变量的定义存在于代码中或者链接的库文件中。
2. 检查是否缺少了相应的库文件,并将其添加到编译选项中。
3. 检查代码中是否存在拼写错误或语法错误,导致编译器无法找到相应的定义。
请注意,具体的解决方法可能因编程语言和开发环境而异。如果你提供更多的上下文信息,我可以给出更具体的建议。
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: ARRY
这个警告*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: ARRY 可能是因为你在代码中引用了一个未解析的外部符号ARR。引用提到,可以尝试在代码中使用扩展的链接器(extended linker)。引用指出,全局变量的添加可能解决了这个问题。在你的代码中,你可以尝试通过将ARRY定义为全局变量来解决这个问题。另外,引用也提到了可能是在写.D和.H文件时出现了问题,你可以检查你的代码中是否正确声明了该变量。