MinGW Code Blocks 运行 winsock

在MinGW环境下使用Code::Blocks进行winsock编程时,遇到'undefined reference to WSAStartup@8'的错误。解决方法是在Linker settings的Other linker options中添加-lwsock32。本文通过一个简单的TCP服务器示例,详细介绍了配置过程和代码实现。

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

               

先转一段: 来自网络 网址不记得啦,不好意思

----------------------------

按照原来在VS下的经验,添加头文件

#include "windows.h"

#include "winsock2.h"

#pragma comment(lib, "ws2_32.lib")

在使用代码

 if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0)
 {
  return 1;
 }

报错,undefined reference to WSAStartup@8

查阅网络,得知原来Mingw没有默认包含Windows的库,需要在链接的地方添加-lwsock32。

 

-------------------------------------

 

 

再 Code::blocks 中新建一个工程, 然后右击工程

 

选择 build options

 

选择 Linker setting

 

在  Other linker options 中添加: -lwsock32
问题解决

 

 

 

附代码:

 

//#include "stdafx.h"     //  注释掉#include "windows.h"      //  新增 windows.h #include "winsock2.h"   //#pragma comment(lib, "ws2_32.lib")   // 注视掉  #include <iostream>   using namespace std;     int  main(int argc, char* argv[])   {       const int BUF_SIZE = 64;         &n

8 0 C:\Users\admin\Desktop\9191.cpp In file included from C:\Users\admin\Desktop\9191.cpp 15 2 C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\include\winsock2.h [Warning] #warning Please include winsock2.h before windows.h [-Wcpp] C:\Users\admin\Desktop\9191.cpp In function 'bool connectToServer(const char*)': 156 42 C:\Users\admin\Desktop\9191.cpp [Error] 'inet_pton' was not declared in this scope C:\Users\admin\Desktop\9191.cpp In function 'bool enterLobby()': 304 72 C:\Users\admin\Desktop\9191.cpp [Error] 'outtextcenter' was not declared in this scope C:\Users\admin\Desktop\9191.cpp In function 'void updateLocalPlayer()': 354 26 C:\Users\admin\Desktop\9191.cpp [Error] too many arguments to function 'MOUSEMSG GetMouseMsg()' 1 0 C:\Users\admin\Desktop\9191.cpp In file included from C:\Users\admin\Desktop\9191.cpp 143 48 C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\include\graphics.h [Note] declared here 366 18 C:\Users\admin\Desktop\9191.cpp [Error] 'getinput' was not declared in this scope 374 55 C:\Users\admin\Desktop\9191.cpp [Error] 'min' was not declared in this scope 374 55 C:\Users\admin\Desktop\9191.cpp [Note] suggested alternative: 60 0 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\vector In file included from C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/vector 3 C:\Users\admin\Desktop\9191.cpp from C:\Users\admin\Desktop\9191.cpp 240 5 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\bits\stl_algobase.h [Note] 'std::min' 374 56 C:\Users\admin\Desktop\9191.cpp [Error] 'max' was not declared in this scope 374 56 C:\Users\admin\Desktop\9191.cpp [Note] suggested alternative: 60 0 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\vector In file included from C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/vector 3 C:\Users\admin\Desktop\9191.cpp from C:\Users\admin\Desktop\9191.cpp 261 5 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\bits\stl_algobase.h [Note] 'std::max' C:\Users\admin\Desktop\9191.cpp In function 'void applySkillEffect(int, Vector2)': 444 58 C:\Users\admin\Desktop\9191.cpp [Error] 'max' was not declared in this scope 444 58 C:\Users\admin\Desktop\9191.cpp [Note] suggested alternative: 60 0 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\vector In file included from C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/vector 3 C:\Users\admin\Desktop\9191.cpp from C:\Users\admin\Desktop\9191.cpp 261 5 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\bits\stl_algobase.h [Note] 'std::max' 452 54 C:\Users\admin\Desktop\9191.cpp [Error] 'max' was not declared in this scope 452 54 C:\Users\admin\Desktop\9191.cpp [Note] suggested alternative: 60 0 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\vector In file included from C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/vector 3 C:\Users\admin\Desktop\9191.cpp from C:\Users\admin\Desktop\9191.cpp 261 5 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\bits\stl_algobase.h [Note] 'std::max' C:\Users\admin\Desktop\9191.cpp In function 'void checkCollisions()': 468 57 C:\Users\admin\Desktop\9191.cpp [Error] 'max' was not declared in this scope 468 57 C:\Users\admin\Desktop\9191.cpp [Note] suggested alternative: 60 0 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\vector In file included from C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/vector 3 C:\Users\admin\Desktop\9191.cpp from C:\Users\admin\Desktop\9191.cpp 261 5 C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\bits\stl_algobase.h [Note] 'std::max' C:\Users\admin\Desktop\9191.cpp In function 'void renderGame()': 533 18 C:\Users\admin\Desktop\9191.cpp [Error] 'PURPLE' was not declared in this scope C:\Users\admin\Desktop\9191.cpp In function 'void showGameOver()': 544 83 C:\Users\admin\Desktop\9191.cpp [Error] 'outtextcenter' was not declared in this scope 546 85 C:\Users\admin\Desktop\9191.cpp [Error] 'outtextcenter' was not declared in this scope 548 89 C:\Users\admin\Desktop\9191.cpp [Error] 'outtextcenter' was not declared in this scope C:\Users\admin\Desktop\9191.cpp In function 'int main()': 566 19 C:\Users\admin\Desktop\9191.cpp [Error] 'RENDER_MANUAL' was not declared in this scope 566 32 C:\Users\admin\Desktop\9191.cpp [Error] 'setrendermode' was not declared in this scope
最新发布
09-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值