2014-07-20 1 views
-2

저는 네트워크 프로그래밍에 익숙하지 않습니다. 여기 제가 시도한 프로그램이 있습니다.windows sdk 및 wsa 시작

#include<winsock2.h> 
#include<ws2tcpip.h> 
#include<iphlpapi.h> 
#include <iostream> 


using namespace std; 

int main() 
{ 
    WSADATA wsaData; 
    int iResult; 
    //initialize winsock 
    iResult = WSAStartup(MAKEWORD(2,2), &wsaData); 
    if(iResult!=0) 
    { 
     cout << "Startup Failed:"<<iResult<< endl; 
    } 

    return 1; 
} 

내가 가진 오류 :이 오류가 나오는 이유

D:\CodeBlocks\MinGW\bin\Network\main.cpp|14|undefined reference to `[email protected]'| 

다시, 이건 내 처음으로 네트워크 programming을하고 내가 donno입니다. Windows SDK를 설치해야한다고 생각합니다. 누군가 내가해야하는지, 내가 무엇을 설치해야하는지 말해 줘.

+0

은 무엇 당신은 컴파일 사용합니까? 현재 작성된 귀하의 질문은 귀하의 문제가 무엇인지 이해할 수있는 충분한 요소를 제공하지 않습니다. –

+2

링커 설정에 Ws2_32.lib를 추가하십시오. –

+0

@SergeBallesta g ++! C :: B의 기본 컴파일러 –

답변

0

Alex Farber가 언급 한 것처럼 링커가 WSAStartup의 실제 코드를 찾으려면 Ws2_32.lib에 연결해야합니다. 그는 (winsock2 헤더에서) 선언 된 방식을 알지만 정적 (.lib) 또는 동적 (Windows의 dll) 일 수있는 관련 라이브러리 파일에있는 실제 구현은 알 수 없습니다.

이런 종류의 질문을하기 전에 직접 오류를 찾아야하며 동일한 문제가있는 많은 사람들을 찾을 수 있습니다.

더 일반적인 조언 : 이러한 종류의 문제가 발생하면 동일한 '정확한'동일한 오류 메시지가있는 첫 번째 조사가 작동하지 않는 경우 (매우 의심 스럽지만 일어날 수 있음)보다 일반적인 오류 'undefined '에 대한 귀하의 갈증을 쉽게 충족시킬 것입니다 (: D).

편집/연결에 대한 간단한 개요를 보려면 How does the compilation/linking process work?을 참조하십시오. 이 그것을 응답하고 당신에게 도움을 검색하는 방법에 대한 몇 가지 힌트를 제공 희망 ^^

이 되세요 좋은 하루 행복 코딩 :