Avatar billede rif1900 Nybegynder
26. februar 2006 - 19:44 Der er 10 kommentarer og
2 løsninger

konvertering af program der bruger Winsock.h til Linux

Hej

Jeg står med et forholsvist irriterende problem

Jeg er i gang med noget socket programmering og har lavet en server og en client.
Da jeg startede mit lille projekt var det ud fra tanken at både server og client blev afviklet fra en win32 platform.

Nu viser det sig så at jeg skal have server delen afviklet på en Linux Redhat maskine.

Jeg er ude efter den mest simple løsning på det her problem hvis sådan en findes.

Hvis nogen kan guide mig lidt igennem denne ændringsprocess og minimere ændringerne mest muligt er der 60 point og mange tak for hjælpen fra mig :)

Mvh. Mathias
Avatar billede rif1900 Nybegynder
26. februar 2006 - 19:48 #1
Avatar billede bertelbrander Novice
26. februar 2006 - 20:26 #2
Man bruge ikke WSAxxx på linux, dem kan du bare slette.
closesocket er close på linux.
Din fil bliver du nødt til at lave som en C-style FILE * eller en C++-style fstream.
Avatar billede rif1900 Nybegynder
26. februar 2006 - 20:41 #3
jamen jeg kan vel ikke bare inkludere winsock.h uden problemer?
Avatar billede rif1900 Nybegynder
26. februar 2006 - 20:44 #4
og hvis mankan hvad erstatter så
WSAGetLastError();
WSACleanup();
?
Avatar billede bertelbrander Novice
26. februar 2006 - 21:11 #5
Du skal ikke bruge winsock.h på linux, du skal nok bruge sys/types.h og sys/socket.h

WSAClenaup behøver du ikke.

Jeg tror ikke at der er en dirkte oversættelse af WSAGetLastError, mon ikke man bruger errno?
Avatar billede arne_v Ekspert
26. februar 2006 - 22:41 #6
jeg plejer at erstatte

#include <windows.h>

med

#include <sys/socket.h>
#include <fcntl.h>
#include <netdb.h>

i socket programmer
Avatar billede rif1900 Nybegynder
26. februar 2006 - 22:45 #7
du mener ikke <winsock.h> arne?
Avatar billede arne_v Ekspert
26. februar 2006 - 22:48 #8
nej

windows.h inkluderer winsock.h
Avatar billede rif1900 Nybegynder
26. februar 2006 - 22:58 #9
okay
lige en ting mere.

kan du råde mig til en compiler som kan give mig filer der kan bruges i linux?
Avatar billede rif1900 Nybegynder
26. februar 2006 - 23:00 #10
smid det næste du skriver som svar så får du lige 30

og bertelbrander smid lige et svar så får du resterende.
Avatar billede bertelbrander Novice
27. februar 2006 - 00:09 #11
På Linux er gcc/g++ sandsynligvis instaleret, så brug den.

Jeg samler ikke på point.
Avatar billede arne_v Ekspert
27. februar 2006 - 00:43 #12
stort set alle bruger gcc/g++ paa Linux, saa der er ikke de store valgmulighder

enten er den installeret eller du kan installere den fra dine cd'ere eller
du kan downloade og installere den

jeg synes maaske ikke at jeg har fortjent mere end 5-10 her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester