关于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 其他情况,查 ...
随机推荐
- JS-009-屏幕分辨率、浏览器显示区域、元素位置获取
此文简略讲述有关屏幕大小.元素位置及大小获取. 执行文中脚本时,请先打开 Chrome 浏览器,并切换至开发者工具的控制台,并打开网址:http://www.yixun.com/,文中元素事例为页面元 ...
- JavaScript实现dropdownlist选定值后将选定值的key与value填入两个textbox中
<script language="javascript" type="text/javascript"> var txtText0 = " ...
- 转帖:解决jquery.js在myeclipse中报错的问题
转载地址:http://tieba.baidu.com/p/1993753087 从官方下载的jquery.js在myeclipse始终用个大大的红叉,看着很不爽,如何解决呢:jquery.js在my ...
- Finally的执行时机
有人问下面代码是return先执行,还是finally先执行. int i = 1;try{ return i;}finally{ i = 0;} 很多人都回答是finally先执行,因为他们 ...
- JavaScript:JavaScript事件的处理
JavaScript事件处理 —————事件的处理流程: —————动态事件绑定: —————常用的事件处理. 1.事件的概念 在页面之中,会针对用户的每一个操作进行记录.在页面中的事件可以简单的理解 ...
- procps包里面的sysctl命令
procps包里面的sysctl命令 --http://www.cnblogs.com/createyuan/p/3740917.html?utm_source=tuicool&utm_med ...
- android 检查网络连接状态实现步骤
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.AC ...
- SWIFT UITableView的基本用法
import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: ...
- JS实现图片跟随鼠标移动
在实现这个特效之前,需要了解JS中一个对象,event(事件对象),对,只需了解这一个对象.它的方法属性我不多说了,想详细了解的童鞋点击这里. 我们用到的只有这个对象的两个属性,clientX与cli ...
- 通过SSIS监控远程服务器磁盘空间并发送邮件报警!
由于之前ESB是供应商部署的,且部署在C盘(C盘空间很小,还添加了很多ESB的windows服务日志在C盘,很容易把C盘空间占满,导致ESB服务运行宕机,几乎每隔几周发生一次事故,需要人工干预处理,不 ...