Compiler en linux

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
karclopfr
Messages : 8
Inscription : dim. 05/mars/2006 11:03

Compiler en linux

Message par karclopfr »

Bonjour,

J' ai fait un petit jeu d' echecs pour jouer en direct via une connexion serveur-client. Cela fonctionne très bien seulement mon ordi doit tourner 24h/24 pour le serveur.
J' ai loué un serveur dédié pour héberger le serveur mais il est sous linux, je cherche donc le moyen de compiler mon serveur en linux.
Dois-je installer linux et purebasic en linux ?
Je peux donner le code en purebasic pour que quelqu' un me le compile ?

Merci à vous et a Purebasic !
wolfjeremy
Messages : 1202
Inscription : sam. 31/déc./2005 23:52

Message par wolfjeremy »

Je veu bien le compiler si tu veu, j'ai mandrake linux :wink:
karclopfr
Messages : 8
Inscription : dim. 05/mars/2006 11:03

Voila le script merci !

Message par karclopfr »

Merci de compiler ce script pour linux !

Mon mail :clop.kar@laposte.net

Code : Tout sélectionner

If InitNetwork() = 0
  MessageRequester("Error", "Can't initialize the network !", 0)
  End
EndIf
Dim id(1000)
Dim qui(1000)
Global Port, tampon.s, globatt.s
Port=6022 : tampon=""

Procedure.s connectdirect(get.s,att)
  res.s="" : GET$="/direct/"+get : EOL$ = Chr(13)+Chr(10)
  Portb=80 : HOST$="www.chess-mail.com"
  ClientIDb=OpenNetworkConnection(HOST$,Portb)
  
  If ClientIDb
    SendNetworkString(ClientIDb,"GET "+GET$+" HTTP/1.1"+EOL$) 
    SendNetworkString(ClientIDb,"HOST: "+HOST$+EOL$)
    SendNetworkString(ClientIDb,EOL$)
    Buffer = AllocateMemory(1000)
    quitter=0 : k=0
    While quitter=0
      ReceiveNetworkData(ClientIDb,Buffer,1000)
      res=res+PeekS(Buffer,1000)
      If FindString(res,"ÿ",0)<>0 Or att=0
        quitter=1
      EndIf
      Delay(1)
    Wend
    If att=0
      globatt=globatt+res
      attdirect=1
    Else
      res=Left(res,FindString(res,"ÿ",0)-1)
      x=FindString(res,Chr(253),0)
      res=Right(res,Len(res)-x)
      CloseNetworkConnection(ClientIDb)
    EndIf
  EndIf
EndProcedure

tdirect.l=0 : nbj=0
a.s=connectdirect("serv.php",1)
CreateNetworkServer(Port)
Repeat
  t.l=ElapsedMilliseconds()
  If (t-tdirect)>6000000
    a.s=connectdirect("serv.php",1)
    tdirect=t
  EndIf
  res.s=tampon
  SEvent = NetworkServerEvent()
  q=0
  If SEvent
    Buffer=AllocateMemory(1000)
    CurrentID = NetworkClientID()
    ClientID=CurrentID
    Select SEvent 
      Case 1
        Debug "A new client has connected !"
      Case 2
        While FindString(res,"ÿ",0)=0 And (ElapsedMilliseconds()-t)<30000
          Delay(10)
          ReceiveNetworkData(ClientID, Buffer, 1000)
          res=res+PeekS(Buffer)
        Wend
      Case 4
        qc=0 : k.l=0
        For i=0 To 999
          If id(i)=ClientID
            qui(i)=0 : id(i)=0
          EndIf
        Next
    EndSelect
    FreeMemory(Buffer)
  Else
  Delay(50)  
  EndIf 
  If FindString(res,"ÿ",1)<>0
    x=FindString(res,"ÿ",1)
    tampon=Right(res,Len(res)-x)
    res=Left(res,x)
  EndIf
  q=1
  If res<>""
    res=res+Chr(253)+Str(CurrentID)
  EndIf
a.s=res
b.s=Left(a,1)
c.s=Right(a,Len(a)-1)
x=FindString(c,Chr(253),1)
tid=Val(Right(c,Len(c)-x))
c=Left(c,x-1)
Select b
  Case "0"
    ;nouvelle connection
    k=0
    While qui(k)<>0
      k=k+1
    Wend
    id(k)=tid
    qui(k)=Val(c)
    If k>nbj
      nbj=k
    EndIf
  Case "1"
    x=FindString(c,Chr(252),1)
    idenv=Val(Left(c,x-1))
    c=Right(c,Len(c)-x)
    k=0
    While qui(k)<>idenv And k<(nbj+2)
      k=k+1
    Wend
    SendNetworkString(id(k),c)
EndSelect
Until Quit=1
Merci !

Sebastien
Répondre