Undefined reference to getaddrinfo

Habe ich immer diese Fehler seit geraumer Zeit jetzt, und Google hat nicht viel geholfen.

Ich bin ein Neuling auf Winsock-Programmierung und versuche zu lernen von online-Ressourcen. Ich bin versucht, zu erstellen eine einfache server mithilfe der Informationen auf der MSDN-website. Immer wenn ich den code kompilieren (MinGW), bekomme ich die Fehlermeldung im Titel genannten (Undefined reference to getaddrinfo). Unten ist der code:

#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
#define WINVER WindowsXP

#include <windows.h>
#include <winsock2.h>
#include <winsock.h>
#include <ws2tcpip.h>
#include <stdio.h>

int main() {
    WSADATA wsaData;
    int iResult;
    iResult = WSAStartup(MAKEWORD(2,2), &wsaData);
    if (iResult != 0) {
        printf("WSAStartup failed: %d\n", iResult);
        return 1;
    }

    #define DEFAULT_PORT "27015"

    struct addrinfo *result = NULL, *ptr = NULL, hints;

    ZeroMemory(&hints, sizeof (hints));
    hints.ai_family = AF_INET;
    hints.ai_socktype = SOCK_STREAM;
    hints.ai_protocol = IPPROTO_TCP;
    hints.ai_flags = AI_PASSIVE;

    //Resolve the local address and port to be used by the server
    iResult = getaddrinfo(NULL, DEFAULT_PORT, &hints, &result);
    if (iResult != 0) {
        printf("getaddrinfo failed: %d\n", iResult);
        WSACleanup();
        return 1;
    }
    return 0;
}  

Ich bin kompilieren mit folgendem Befehl:

gcc msdn_np.c -o msdn_np.exe -lWS2_32
InformationsquelleAutor check123 | 2011-03-07
Schreibe einen Kommentar