关于undefined reference to `WSASocketA@24'问题的解决
关于 Eclipse 开发C++ Socket ,在开发的过程中 用WinGW 平台编译,
示例server端:
#include <winsock2.h>
#include <mswsock.h>
#include <iostream>
#include <windows.h>
using namespace std;
#pragma comment(lib, "ws2_32.lib")
#pragma comment(lib, "mswsock.lib")
DWORD IniSOCKDLL()
{
WORD wVersionRequested;
WSADATA wsaData;
int err=0;
wVersionRequested = MAKEWORD( 2, 2 );
err = WSAStartup( wVersionRequested, &wsaData );
return err;
}
int main(int argc, char* argv[])
{
IniSOCKDLL();
SOCKET sc=WSASocket(AF_INET,
SOCK_STREAM,
0,
NULL,
0,
NULL);
SOCKADDR_IN addr;
int len;
addr.sin_family=AF_INET;
addr.sin_addr.s_addr = inet_addr("127.0.0.1");
addr.sin_port = htons(1002);
len=sizeof(addr);
connect(sc, (struct sockaddr *)&addr, len);
char buff[1024];
ZeroMemory(buff,1024);
cout<<"邮包开始发送"<<endl;
/*for(int i=0;i<=100;i++)
{
if(i==0)
{*/
memcpy(buff,"邮包从南京出发",14);
send(sc,buff,14,0);
Sleep(1000);
/*}
else if(i<20)
{*/
memcpy(buff,"邮包在南京和镇江之间",20);
send(sc,buff,20,0);
Sleep(1000);
memcpy(buff,"邮包到达镇江",12);
send(sc,buff,12,0);
Sleep(1000);
memcpy(buff,"邮包在镇江和常州之间",20);
send(sc,buff,20,0);
Sleep(1000);
memcpy(buff,"邮包到达常州",12);
send(sc,buff,12,0);
Sleep(1000);
memcpy(buff,"邮包在常州和无锡之间",20);
send(sc,buff,20,0);
Sleep(1000);
memcpy(buff,"邮包到达无锡",12);
send(sc,buff,12,0);
Sleep(1000);
memcpy(buff,"邮包在无锡和苏州之间",20);
send(sc,buff,20,0);
Sleep(1000);
memcpy(buff,"邮包到达苏州",12);
send(sc,buff,12,0);
Sleep(1000);
memcpy(buff,"邮包在苏州和上海之间",20);
send(sc,buff,20,0);
Sleep(1000);
/*}
else
{*/
memcpy(buff,"邮包到达上海",12);
send(sc,buff,12,0);
Sleep(1000);
/* recv(ss,buff,12,0);
cout<<buff<<endl;*/
closesocket(sc);
return 0;
}
会发现Error] C:\Users\HEIORAY\Documents\C-Free\Projects\PING\pi.c:277: undefined reference to `WSASocketA@24'
程序开始时已经导入winsock之类的库,同时#pragma comment(lib,"ws2_32.lib"),但依旧不行,无法消除错误。后来上网搜了一些方法,说是在工程设置中有个连接,在里面加入winsock32就可以了,试过之后的确解决了一些问题。
但是下面的错误还是没有消除,
[Error] C:\Users\HEIORAY\Documents\C-Free\Projects\PING\pi.c:277: undefined reference to `WSASocketA@24'
最后在连接里面再填入一个ws2_32就可以了。如果大家有类似的错误可以试一下。
问题解决 可以进行了
关于undefined reference to `WSASocketA@24'问题的解决的更多相关文章
- [CentOS]CentOS下编译CPP文件时报错[undefined reference to `__gxx_personality_v0' collect2: ld]的解决办法
在CentOS环境下编译CPP时报出 undefined reference to `__gxx_personality_v0' collect2: ld 以上错误,调查了一下,加上参数[-lstdc ...
- GCC编译uboot出现(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0'错误的解决的方法
/opt/arm-2010.09/bin/../lib/gcc/arm-none-linux-gnueabi/4.5.1/armv4t/libgcc.a(_bswapsi2.o):(.ARM.exid ...
- Linux+CLion+树莓派远程编译时,Cmake编译出现undefined reference to `vtable for MainWindow'的解决办法
在win+CLion上进行远程qt开发时碰到以下错误: 错误提示: undefined reference to `vtable for MainWindow' 原因:源文件的目录结构有问题?? 解决 ...
- CMake undefined reference to `QTcpServer::QTcpServer(QObject*)'的解决
1. 这是因为工程link不到network的库,因此除了要包含头文件 #include 之外,还需要在.pro文件中加入: QT += network 2. 对于CMake,需添加Net ...
- 编译nginx时提示undefined reference to 'pcre_free_study' 的问题及解决
./configure --add-module=../ngx_devel_kit-0.2.19/ --add-module=../lua-nginx-module-0.9.19/ --with-l ...
- undefined reference to `clock_gettime'编译错误的解决办法
解决办法如下
- 利用gcc编译链接时出现 ‘undefined reference to `std::ios_base::Init::Init()’ 解决
一般编译链接c++程序最好使用g++,若有如上的报错信息,需要在gcc后加上 -lstdc++ eg: gcc test.c -lstdc++ gcc和g++都是GNU的一个编译器. g++:后缀.c ...
- /usr/bin/ld: .build_release/tools/alignment_tools.o: undefined reference to symbol 'omp_get_thread_num@@OMP_1.0'
问题:/usr/bin/ld: .build_release/tools/alignment_tools.o: undefined reference to symbol 'omp_get_threa ...
- Qt :undefined reference to vtable for "xxx::xxx"
现象: 类加上宏 Q_OBJECT 就会报错 :undefined reference to vtable for "xxx::xxx" 解决方法: 重新 qmake 其他情况,查 ...
随机推荐
- iOS NSDate计算时间间隔
//获取开始时间 NSDate* tmpStartData = [NSDate date]; /*( 执行代码段 )*/ ; i<; i++) { DLog(@"%d",i) ...
- JQuery:JQuery 中的CSS()方法
JQuery:CSS()方法jQuery css()方法:css()方法设置或返回被选元素的一个或多个样式属性.1.返回 CSS 属性如需返回指定的 CSS 属性的值,请使用如下语法:css(&quo ...
- openni2 和opencv读取数据
http://blog.csdn.net/aptx704610875/article/details/49585241
- 九个uname命令获取Linux系统详情的实例
当你在控制台模式下,无法通过“鼠标右键 > 关于”获取操作系统的信息.这时,在Linux下,你可以使用uname命令,帮助你完成这些工作. Uname是unix name的缩写.在控制台中实际使 ...
- Java Set操作
Set:无顺序,不包含重复的元素 HashSet:为快速查找设计的Set.存入HashSet的对象必须定义hashCode(). TreeSet: 保存次序的Set, 底层为树结构.使用它可以从Set ...
- Java HashMap Demo
代码: import java.util.HashMap; import java.util.Iterator; import java.util.Set; import java.util.Map. ...
- Vue.2.0.5-生产环境部署
删除警告 为了减少文件大小,Vue 精简独立版本已经删除了所有警告,但是当你使用 Webpack 或 Browserify 等工具时,你需要一些额外的配置实现这点. Webpack 使用 Webpac ...
- nsstring基本数据类型的包装类
// // main.m // 10-基本数据类型的包装类 // // Created by apple on 14-3-20. // Copyright (c) 2014年 apple. A ...
- NSNotificationCenter
- (void)viewDidLoad { [super viewDidLoad]; UIButton *btn = [UIButton buttonWithType:UIButtonTypeCust ...
- Java基础之线程——使用Runnable接口(JumbleNames)
控制台程序. 除了定义Thread新的子类外,还可以在类中实现Runnable接口.您会发现这比从Thread类派生子类更方便,因为在实现Runnable接口时可以从不是Thread的类派生子类,并且 ...