c/c++语言开发共享“collect2:error:ld返回1退出状态”是什么意思?

我看到错误collect2: error: ld returned 1 exit status经常collect2: error: ld returned 1 exit status 。 例如,我正在执行以下代码片段:

 void main() { char i; printf("ENTER i"); scanf("%c",&i); clrscr(); switch(i) { default: printf("nHi..n"); break; case 1: printf("nna"); break; case 2: printf("nbn"); break; case 3: printf("nc"); break; } } 

我得到了这个:

 main.c:(.text+0x33): undefined reference to `clrscr' collect2: error: ld returned 1 exit status 

这是什么意思?

    “ld返回1退出状态”错误是先前错误的结果。 在你的例子中有一个早期的错误 – “对’clrscr’的未定义引用” – 这是真实的错误。 退出状态错误仅表示构建过程中的链接步骤遇到一些错误。 通常退出状态0表示成功,退出状态> 0表示错误。

    在构建程序时,可以将多个工具作为单独的步骤运行,以创建最终的可执行文件。 在你的情况下,其中一个工具是ld ,它首先报告它找到的错误(clrscr引用丢失),然后它返回退出状态。 由于退出状态> 0,表示错误并报告。

    在许多情况下,工具以退出状态返回它们遇到的错误数。 因此,如果ld工具发现两个错误,其退出状态将为2。

    在您的情况下,您可以参考缺失的符号。 但在某些情况下,ld不会提供错误信息。

    如果要扩展ld提供的信息,只需将以下参数添加到$(LDFLAGS)

     -Wl,-V 

    clrscr不是标准的C函数。 根据互联网,它曾经是旧Borland C的东西。
    是clrscr(); C ++中的函数?

    包括: #include

    并使用System("cls")而不是clrscr()

    需要了解更多c/c++开发分享“collect2:error:ld返回1退出状态”是什么意思?,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享“collect2:error:ld返回1退出状态”是什么意思?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/980583.html

      (0)
      上一篇 2021年12月14日
      下一篇 2021年12月14日

      精彩推荐