[Linux]RunProgram&Compilateur

Codes specifiques à Linux
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

[Linux]RunProgram&Compilateur

Message par cha0s »

j'ai un bug assez étrange sur mon ubuntu, lorsque j'utilise RunProgram pour lancer le compilateur "pbcompiler" avec l'option -sb (équivalent de /STANDBY sous windows) cela marche sans problème, je crée un exécutable le compilateur me dit a l'exécution du programme "ERROR Can't load any OSLibraries! please re-install Purebasic".

En ligne de commande pbcompiler -sb marche parfaitement.
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

Avec un morceau, ce serait plus facile :)
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

morceau ? de code ? :p

Code : Tout sélectionner

  Compilateur = RunProgram("/home/chaos/purebasic/compilers/pbcompiler", "-sb", "", #PB_Program_Open|#PB_Program_Read)
  Sortie$ = ""
  If Compilateur 
    While ProgramRunning(Compilateur)
      Sortie$ + ReadProgramString(Compilateur) + Chr(13)
        MessageRequester("Sortie", Sortie$)
    Wend
    Sortie$ + Chr(13) + Chr(13)
    Sortie$ + "Code de retour : " + Str(ProgramExitCode(Compilateur))
  EndIf
  MessageRequester("Sortie", Sortie$)
sous l'IDE sa bloque apres READY normal il attend des instructions. compilé pouf ERROR !!
Anonyme

Message par Anonyme »

je ne connais pas le shell du compilo , mais doit y avoir un oubli de linkage quelque part non?
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

le compiler utilise une variable d'environnement pour accéder au répertoire des lib et elle change pas d'un programme a l'autre je comprend pas ....
Anonyme

Message par Anonyme »

C'est le compilo de la bêta ?
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

oep, bug identifié ?
Anonyme

Message par Anonyme »

Dès fois la compil foire , l'ide reste en attente et rien. c'est surtout avec la 3D que ca me fait ca.
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

j'ai aussi ce problème parfois le compilo bug sans savoir pourquoi mais la c'est différent c'est a chaque fois !!!
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

As tu réussi à régler le problème ?

Car moi aussi, j'ai le problème :

Code : Tout sélectionner

******************************************
PureBasic 4.30 (Linux - x86)
******************************************

Loading external modules...
Error: Line 0 - Can't load any OSLibraries! Please re-install PureBasic.
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

Comme le recommande Freak, utilise ces commandes (http://www.purebasic.fr/english/viewtop ... 191#175191)

Code : Tout sélectionner

SetEnvironmentVariable("PUREBASIC_HOME", GetEnvironmentVariable("HOME") + "/purebasic")
SetEnvironmentVariable("PATH", GetEnvironmentVariable("PATH") + ":" + GetEnvironmentVariable("HOME") + "/purebasic/compilers")
RunProgram("purebasic", Parameter.s, WorkingDirectory.s)
Ollivier
Messages : 4190
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Message par Ollivier »

@Chaos

ça marche ça?

Code : Tout sélectionner

  Compilateur = RunProgram("/home/chaos/purebasic/compilers/pbcompiler", "-sb", "", #PB_Program_Open|#PB_Program_Read|#PB_Program_Write) 
  Sortie$ = "" 
  If Compilateur 
    While ProgramRunning(Compilateur) 
      Sortie$ + ReadProgramString(Compilateur) + Chr(13) 
        MessageRequester("Sortie", Sortie$) 
    Wend 
    Sortie$ + Chr(13) + Chr(13) 
    Sortie$ + "Code de retour : " + Str(ProgramExitCode(Compilateur)) 
  EndIf 
  MessageRequester("Sortie", Sortie$)
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

voui cela marche je me souvient plus trop du problème mais cela venait lorsque je voulait compiler quelques chose.
Ollivier
Messages : 4190
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Message par Ollivier »

chaOs a écrit :je me souvient plus trop du problème
Ben, sous Ubuntu, quand tu compiles ce code ci-dessous, et que tu démarres l'exécutable obtenu, quel message s'affiche?

1) Erreur de l'OS, veuillez réinstaller PureBasic, etc...
2) Compilo non trouvé (je l'ai eu aussi cte erreur, il faut bien placer l'exécutable dans le répertoire adéquat pour tester)
3) Erreur : Couille dans le pâté !
4) Yeah ! Gourdin : tout va bien !

?

Code : Tout sélectionner

  Compilateur = RunProgram("/home/chaos/purebasic/compilers/pbcompiler", "-sb", "", #PB_Program_Open|#PB_Program_Read|#PB_Program_Write) 
  Sortie$ = "" 
  If Compilateur 
    While ProgramRunning(Compilateur) 
      Sortie$ = ReadProgramString(Compilateur) 
      MessageRequester("Sortie", "»" + Sortie$ + "«") 
      If Sortie$ = "READY"
         WriteProgramStringN(Compilateur, "END")
      EndIf
    Wend 
    If ProgramExitCode(Compilateur) = 0
      Sortie$ = "Yeah ! Gourdin : tout va bien !"
    Else
      Sortie$ = "Erreur : Couille dans le pâté !"
    EndIf
  Else
    Sortie$ = "Compilo non trouvé!"
  EndIf 
  MessageRequester("Sortie", Sortie$) 
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

j'ai retrouvé l'erreur. Je lance dans L'IDE le compilo en standby pas de problème il est pret et attend mes commandes. je compile le programme et le lance -> Error : .... OS Library blablabla

En ligne de commande pbcompiler -sb marche parfaitement.

Edit :
Je pensait que
export PUREBASIC_HOME=~/purebasic
export PATH=$PUREBASIC_HOME/compilers:$PATH
de mon .bashrc suffisait.

avec ceci plus de problème.

Code : Tout sélectionner

SetEnvironmentVariable("PUREBASIC_HOME", GetEnvironmentVariable("HOME") + "/purebasic")
SetEnvironmentVariable("PATH", GetEnvironmentVariable("PATH") + ":" + GetEnvironmentVariable("HOME") + "/purebasic/compilers")
  Compilateur = RunProgram("pbcompiler", "-sb", "", #PB_Program_Open|#PB_Program_Read|#PB_Program_Write)
  Sortie$ = ""
  If Compilateur
    While ProgramRunning(Compilateur)
      Sortie$ + ReadProgramString(Compilateur) + Chr(13)
        MessageRequester("Sortie", Sortie$)
    Wend
    Sortie$ + Chr(13) + Chr(13)
    Sortie$ + "Code de retour : " + Str(ProgramExitCode(Compilateur))
  EndIf
  MessageRequester("Sortie", Sortie$)
Répondre