compiliert nicht !

sabine

Mitglied
Hallo, habe mich eben gerade hier im Forum registriert weil mich nun doch schon seit einiger Zeit folgende Frage quält.

Ich möchte den Code den ich unten gleich schreiben werde in meinem Compiler compilieren , ich benutze VC++ ( habe auch schon andere Compiler verwendet ).

Leider kommt jedes mal folgende Fehlermeldungen:

Nichtaufgelöstes externes Symbol _WSAStartup@8
Cpp1.obj : error LNK2001: Nichtaufgelöstes externes Symbol _WSACleanup@0
Cpp1.obj : error LNK2001: Nichtaufgelöstes externes Symbol _closesocket@4
Cpp1.obj : error LNK2001: Nichtaufgelöstes externes Symbol _socket@12



Nun hab ich jedoch alle nötigen Bibos eingebunden und ich frage mich wo der Fehler liegen könnte.

Wenn jemand eventuell einen hilfreichen Tipp für mich hätte würde ich mich riesig freuen.

Schön Abend noch !



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

void WSAInit(void)
{
WORD wVersionReg = MAKEWORD(1, 1);
WSADATA wsaData;
if (int err = WSAStartup(wVersionReg, &wsaData) != 0)
{
puts("Fehler: Initialisieren - WinSock.dll!");
}
}

int main(void)
{
SOCKET sock = INVALID_SOCKET;


WSAInit();


if ((sock = socket(AF_INET, SOCK_STREAM, 0)) == INVALID_SOCKET)
{
puts("Fehler beim Erstellen des Socket!\n");
}


closesocket(sock);


WSACleanup();


return 0;
}
 
also...

ich weiss nicht. bei mir (c++ builder 6) klappt das kompilieren und debuggen ohne probleme. :rolleyes:

Code:
#include <windows.h>
#include <winsock.h>
#include <stdio.h>

void WSAInit(void)
{
    WORD wVersionReg = MAKEWORD(1, 1);
    WSADATA wsaData;

    if (int err = WSAStartup(wVersionReg, &wsaData) != 0)
    {
        puts("Fehler: Initialisieren - WinSock.dll!");
    }
}

int main(void)
{
    SOCKET sock = INVALID_SOCKET;

    WSAInit();
    if ((sock = socket(AF_INET, SOCK_STREAM, 0)) == INVALID_SOCKET)
    {
        puts("Fehler beim Erstellen des Socket!\n");
    }
    closesocket(sock);
    WSACleanup();
    return 0;
}

ist der code denn auch komplett?
 
das ist natürlich sehr komisch !

vielleicht liegt es daran das du mit dem borland c++ compiliert hast und ich mit dem visual c++.

kann man den borland c++ builder als demo oder ähnlichem irgendwo downloaden ?

auf jedenfall schon mal danke für deine hilfe.
 
ich glaub, für registrierte benutzer gibts auch eine trial zum download. aber sicher bin ich da nicht.

mir ist gerade noch was aufgefallen:
bei dem source brauch ich ein dll-file namens 'cc3260mt.dll'. vielleicht fehlt das ja bei vc++?

sonst kann ich's dir mal schicken... (ca. 1,4mb)
 
Check deine Library Pfade.

Der VC meckert auf diese Art und weise wenn du header dateien includierst die er nicht finden kann.

Musst du in den VC Optionen einstellen wo er denn bitteschön zu suchen hat ;)
 
Uppps sehs grad.

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

Sollten eigentlich auffindbar sein :)
Seltsam gib dennoch mal zum test die richtigen Pfade an denn die fehlermeldung kommt meist davon.
 
also erstmal danke für eure hilfe.

hab mich jetzte einfach mal bei borland.com registriert und downloade derzeit die 6.0.

mal schauen obs dann immernoch nicht geht.
also tschau und danke !
 
Auch wenn Du jetzt Dir Borland heruntergezogen hast, will ich hier trotzdem die Lösung präsentieren.

Ist ganz einfach!
Linkfehler erhält man dann, wenn die entsprechende Lib fehlt. Also habe ich mal in der Hilfe (ist ab und zu ratsam) nachgeschaut und dort steht unter WSAStartup geschrieben:

Requirements:
Library: Use Ws2_32.lib.

Also Dein Beispielcode genommen, Lib in den Settings angegeben und voila ohne Fehler compiliert!
 

Anhänge

  • settings.jpg
    settings.jpg
    14 KB · Aufrufe: 90
Zurück