collect2.exe: error: ld returned 1 exit status分析与解决

阅读前请看一下:我是一个热衷于记录的人,每次写博客会反复研读,尽量不断提升博客质量。文章设置为仅粉丝可见,是因为写博客确实花了不少精力。希望互相进步谢谢!!


提示:以下是本篇文章正文内容

1、问题描述

Windows下进行网络编程,devc++,运行.cpp程序时报如下错:

[Error] ld returned 1 exit status

报错图如下:

在这里插入图片描述

具体是哪一行错误也不跳转。


2、分析

自己百度了一下,网络上解决办法无非如下:

1、程序没有主函数
2、printf/scanf书写错误
3、在主函数中出现自定义函数名书写错误(即出现在主函数前未出现的自定义函数)
4、当自定义函数只进行了声明,主函数便进行调用
5、上一个运行结果未关闭

但是仍未解决报错,后面查看编译日志,如下图:

在这里插入图片描述

这里现实collect2.exe: error: ld returned 1 exit status,其中collect2.exe表示链接文件出错,具体出错在哪里,上方指出来了,即:

在这里插入图片描述
故解决 undefined reference to `__imp_WSAStartup’ 错误即可;

3、解决办法

undefined reference to __imp_WSAStartup’ 解决办法参考之前写的文章《 Windows网络编程 undefined reference to __imp_WSAStartup‘ 解决办法

其实就是编译环境里增加一个链接库 (不同软件不同方法,可自行百度。例如我是devc++,搜索“devc++ 添加wsock32库”)

-lwsock32

在这里插入图片描述


4、总结

error: ld returned 1 exit status,网上最大众的办法不一定适用,需要查看编译日志里的内容,再去分析具体是哪里出错了!!!


码字不易,谢谢点赞!!!
码字不易,谢谢点赞!!!
码字不易,谢谢点赞!!!

猜你喜欢

转载自blog.csdn.net/qq_40967086/article/details/128492142
今日推荐