Sockets unter Linux
-
Hi Leute,
ich habe einen IrcBot in C++ unter Windows (compiliert mit bcc32) geschrieben, der die Winsockets benutzt. Wie kann ich den jetzt unter Windows für Linux compilieren (ich habe zusätzlich Mingw32 zur Verfügung)?Es werden die Standard-Winsock Funktionen wie WSAStartup, gethostbyname etc. benutzt. Ich möchte also nur unter Windows das Prog für Linux compilieren.
Welche Header muss ich da neu includen oder entfernen?
Hab bisher die drin:#include <iostream.h> #include <winsock2.h> #include <stdlib.h> #include <string.h> #include <conio.h> #include <fstream.h>
Und wie sieht die Commandline fürs compilieren mit Mingw32 für Linux aus?
Danke, Refox
-
Hi,
also das ist nicht ganz so einfach wie du dir das vorstellst.
Erstens werden Winsock unter Linux nicht out of the box unterstützt. Die Sockets unter Linux sind etwas anders und können nicht mit den selben Befehlen genutzt werden. Dadurch wird sich das portieren deines Programms auf Linux nicht einfach auf den Austausch von includes beschränken sondern weitreichender sein.
Zweitens ist das Crosscompiling (also etwas unter einen Betriebsystem für ein anderes zu compilieren) was zu vorhast nicht so einfach. Du kannst mit dem mingw32 nicht einfach einen switch hinzufügen und schwups hast du ein Linuxprogramm.Fazit: Um dein Programm anzupassen, zu compilieren und zu tesen wirst du wohl kaum um ein Linux herumkommen. Zumindest ein in VMware emuliertes müsste es schon sein.
MfG
AlexanderS
-
Ok, danke.
Ich habe mir jetzt Slax runtergeladen (http://slax.org) und probiere da mal mein Glück. Hast du vielleicht eine Anleitung für Sockets unter Linux und ein paar Tipps zum Portieren?Danke! Refox!
-
-
<fstream.h>? pervers.
-
Wenn du nicht eine Eigene Platform unabhaengige Socket API
progen willst kannst du auch die von SDL_Net nehmen.
www.libsdl.orgAnsonsten musst du noch etwas hinter die Buecher, so wie
dein Code schnipsel aussieht.Viel glueck...
Gg