Thomas_Boz Δημοσ. 27 Απριλίου 2023 Δημοσ. 27 Απριλίου 2023 #include <stdio.h> #include <winsock2.h> #pragma comment(lib, "ws2_32.lib") int main() { WSADATA wsaData; int result = WSAStartup(MAKEWORD(2,2), &wsaData); if (result != 0) { printf("WSAStartup failed with error code %d\n", result); return 1; } printf("Winsock2 library is working properly!\n"); WSACleanup(); return 0; } Έγραψα το κώδικα για να καταλαβω γιατί δεν μπορώ να κάνω compile και παίρνω το παρακάτω σφάλμα : C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\USERNAME\AppData\Local\Temp\ccN2Py2k.o:Test.c:(.text+0x78): undefined reference to `__imp_WSAStartup' C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\USERNAME\AppData\Local\Temp\ccN2Py2k.o:Test.c:(.text+0xbd): undefined reference to `__imp_WSACleanup' collect2.exe: error: ld returned 1 exit status [Done] exited with code=1 in 1.22 seconds Παρακαλώ κάποια λύση .....
immortalx Δημοσ. 27 Απριλίου 2023 Δημοσ. 27 Απριλίου 2023 (επεξεργασμένο) Αφαιρεσε το #pragma comment και δοκιμασε να κανεις link το ws2_32.lib χειροκινητα στο script με το οποιο κανεις compile. Απο οτι ειδα λιγο που εψαξα φταιει το οτι ειναι import library και με #pragma comment θα δουλευε αν εκανες compile με cl, αλλα οχι με mingw Επεξ/σία 27 Απριλίου 2023 από immortalx
παπι Δημοσ. 29 Απριλίου 2023 Δημοσ. 29 Απριλίου 2023 Το pragma comment lib ειναι extension του microsoft compiler. Βαλε την lib στο linker που εχεις, ή καλυτερα κατεβασε το msvc που ειναι πιο φιλικος στα windows
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα