linking... *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL
时间: 2023-12-04 16:40:06 浏览: 151
这是一个编译器的警告信息,提示在链接时找不到某个符号的定义。这通常是由于缺少库文件或者源代码文件中缺少某个函数的实现导致的。解决这个问题的方法通常是添加缺少的库文件或者实现缺失的函数。
如果你使用的是C语言编译器,可以尝试以下方法解决这个问题:
1.检查代码中是否有函数声明但没有实现的情况。
2.检查是否缺少了某个库文件,如果是,需要将该库文件添加到编译器的链接选项中。
3.检查是否需要添加某个宏定义或者编译选项。
如果你使用的是其他编程语言,可以参考相应的编译器文档或者社区论坛来解决这个问题。
相关问题
Build target 'Target 1' linking... *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: ?C_START MODULE: STARTUP.obj (?C_STARTUP) *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: ?C_START MODULE: STARTUP.obj (?C_STARTUP) ADDRESS: 000DH Program Size: data=9.0 xdata=0 code=15 creating hex file from "倒计时并显示指定数字"... "倒计时并显示指定数字" - 0 Error(s), 2 Warning(s).
这些警告信息是链接器在链接过程中发现的问题。其中包括两个警告:
1. L1警告:未解析的外部符号?C_START,位于STARTUP.obj (?C_STARTUP)模块中。这意味着链接器无法找到名为?C_START的符号的定义。
2. L2警告:对未解析的外部符号?C_START的引用,位于STARTUP.obj (?C_STARTUP)模块中的地址000D处。这意味着在代码中引用了?C_START符号,但链接器无法找到它的定义。
这些警告并不是致命错误,但它们可能会导致程序在某些情况下无法正常工作。要解决这些警告,你可以尝试以下方法:
1. 确保你的代码中没有使用到未定义的符号?C_START。如果有,请检查你的代码,并确保所有使用到的符号都有正确的定义。
2. 检查你的链接器脚本文件或链接选项,确保正确地指定了启动文件和库文件。
3. 如果你使用了类似于Keil或IAR等集成开发环境,尝试重新构建整个项目,以确保所有文件都正确地链接在一起。
如果你能提供更多关于你所使用的开发工具和环境的信息,我可能能够给出更具体的建议来解决这些警告。
Build started: Project: 冒号间隔一秒亮灭循坏 Build target 'Target 1' compiling 电机.c... linking... *** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: MAIN MODULE: .\Objects\电机.obj (____) *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?MAIN?____ *** ERROR L118: REFERENCE MADE TO ERRONEOUS EXTERNAL SYMBOL: MAIN MODULE: D:\C51\LIB\C51S.LIB (?C_INIT) ADDRESS: 001BH Program Size: data=27.0 xdata=0 code=459 Target not created. Build Time Elapsed: 00:00:00
这是一个编译错误的报告,其中包含了多个错误和警告。其中比较重要的是:
- 错误 L104:出现了多个公共定义,这通常是因为在多个源文件中定义了同一个变量或函数。
- 错误 L118:引用了错误的外部符号,这通常是因为没有正确地包含所需的库文件或头文件。
你需要仔细检查你的代码和编译选项,查找是否存在这些问题。同时,你还可以尝试搜索这些错误和警告信息,找到其他开发者遇到过类似的问题,并参考他们的解决方案。
阅读全文