Page 1 sur 2
[..] console linux
Publié : ven. 13/sept./2013 17:33
par jcaspar
B

onjour à tous !
Je teste ce petit bout de code sous Linux
sous Ubuntu 13.04 64bits
Le code compile normalement, mais rien ne s'affiche
pourtant en observant la doc la fonction openconsole
devrait fonctionner sous tout OS...
Faut il installer ou configurer quelquechose de particulier
( packages, paramétrage ?)
En vous remerciant pour vos conseils !
Jean-Marc
Code : Tout sélectionner
OpenConsole()
PrintN("Waiting 5 secs before quit...")
Delay(5000)
Re: [..] console linux
Publié : ven. 13/sept./2013 17:58
par Backup
tu as compilé en mode "console" ??
Re: [..] console linux
Publié : ven. 13/sept./2013 18:19
par jcaspar
Merci de votre réponse !
Effectivement en mode console cela fonctionne normalement...
c'est déjà impressionant lol !
Re: [..] console linux
Publié : ven. 13/sept./2013 18:23
par Backup
c'est bien tu as decouvert le mode Console , mais passe aux fenetre , et laisse moi tombé le mode console
qui ne devrai servir qu'occasionnellement
va dans la parti information et tuto du forum , tu aura plein d'exemples de base ...
Re: [..] console linux
Publié : ven. 13/sept./2013 18:39
par jcaspar
Je viens de tenter de créer un formulaire
mais j'obtiens le message linker error et toute la puissance processeur est monopolisée
cela doit être la config de compilation ou des bibliothèques manquantes ?
Peut être avez vous eu des problèmes identiques ?
Merci beaucoup pour vos conseils !

Re: [..] console linux
Publié : ven. 13/sept./2013 18:54
par Backup
habitude a prendre
1-preciser ta version de Purebasic
2 -donner du code pour voir si c'est Purebasic ou toi qui deconne
3- les problemes de compilation sont souvent du au fait qu'on cherche a compiler un code qui est deja present en Ram (mais planté )
du coup le compilo ne peut pas poursuivre ..
ALT+CTRL +DEL et verifie si t'a pas le prg precedement compilé qui serai encore en Ram
Re: [..] console linux
Publié : ven. 13/sept./2013 20:12
par jcaspar
Pour l'instant je travaille avec la version demo 5.11 Linux 64
il semblerait que ce soit gtk qui pose soucis, même les exemples bloquent...
Il doit forcément exister un remède .... reste à trouver lequel ....
Re: [..] console linux
Publié : ven. 13/sept./2013 20:23
par G-Rom
jcaspar a écrit :Pour l'instant je travaille avec la version demo 5.11 Linux 64
il semblerait que ce soit gtk qui pose soucis, même les exemples bloquent...
Il doit forcément exister un remède .... reste à trouver lequel ....
Salut, installé les dépendances par exemple ?
regarde le readme fourni avec , n'oublie pas que tu est "développeur" , il te faut les lib qui finissent pas -dev

Re: [..] console linux
Publié : ven. 13/sept./2013 20:56
par jcaspar
Merci pour vos conseils
en utilisant checkinstall j'ai trouvé ce qui faisait défaut
apt-get install gcc g++ libc6-dev libsdl1.2-dev libgtk2.0-dev libgnomeprint2.2-dev unixodbc-dev libgnome2-dev libxine-dev libgnomeprintui2.2-dev libxxf86vm-dev
Maintenant cela fonctionne ...
Re: [..] console linux
Publié : dim. 22/sept./2013 17:24
par NY152
Contrairement à ce que j'ai pu lire, sous Linux le mode console est plus utile que sous Windows. Comment ferait-on tourner une application fenestrée sur une distribution sans server X lancé (c'est le cas d'un serveur ou par accès SSH sans X11 forwarding) donc non le mode console est aussi important que le mode fenestré.
Sinon concernant le mode console, le truc qui est énervant (sous Windows, sous Linux je ne sais pas je me sers plus de bash qui me suffit pour le moment) c'est que quand on appelle une application console celle-ci ne s'affiche pas dans l'invite de commande utilisée mais créé sa propre fenêtre, s'exécute et se ferme et du coup on a aucun écho de ce que l'application a faite dans l'invite de commande qui l'a appelé, c'est vraiment pas top si on l'on veut que tout ce passe dans notre invite de commande non ?
Mais peut être que tout ceci n’intéresse que moi lol
Re: [..] console linux
Publié : dim. 22/sept./2013 17:33
par Backup
NY152 a écrit : s'exécute et se ferme et du coup on a aucun écho de ce que l'application a faite dans l'invite de commande qui l'a appelé,
t'as regarder les parametres de Runprg ??
tu peux recuperer la sortie d'un prg lancé par la parametre #PB_Program_Read .....
exemple qui utilise la commande DOS ipconfig (et te renvoi ton ip local )
on lance l'invite de commande de Windows ...
Code : Tout sélectionner
prg=RunProgram("cmd.exe", "?/c ipconfig /all", "", #PB_Program_Open|#PB_Program_Read)
If prg
While ProgramRunning(prg)
Debug ReadProgramString(prg)
Wend
CloseProgram(prg)
EndIf
NY152 a écrit :
Sinon concernant le mode console, le truc qui est énervant (sous Windows, sous Linux je ne sais pas je me sers plus de bash qui me suffit pour le moment) c'est que quand on appelle une application console celle-ci ne s'affiche pas dans l'invite de commande utilisée mais créé sa propre fenêtre, s'exécute et se ferme et du coup
le input permet d'attendre un appuis clavier
Code : Tout sélectionner
If OpenConsole()
ConsoleTitle("Ceci est le titre de la console")
EnableGraphicalConsole(1) ; passe en mode graphique
ConsoleColor(10,0) ; couleur de text vert, couleur fond noir
ConsoleCursor(10) ; gros curseur
ConsoleLocate(5, 10); positionne le curseur
PrintN("j'espere que tu aura le temps de lire ceci!") ; ecrit
ConsoleLocate(5, 30); positionne le curseur
PrintN("Appuyez sur [Entree] pour quitter") ; ecrit
ConsoleLocate(40, 30) ; laisse le curseur a la fin
a$ = Input() ; attent une reponse :D
endif
; EPB
Contrairement à ce que j'ai pu lire, sous Linux le mode console est plus utile que sous Windows.
je vois pas qui a pu ecrire que le mode console n'etait pas utile !

Re: [..] console linux
Publié : dim. 22/sept./2013 17:40
par NY152
runprogram a rien a voir la dedans
Quand je créé un programme console sous Windows qui affiche un simple "Hello World !" dans le prompt par exemple et que je l'appelle ce dit programme dans un invite de commande, je n'aurais pas d'"Hello World !" d'affiché puisque le programme se lancera dans une autre fenêtre que l'invite de commande (qui se fermera à la fin de mon application donc la immédiatement) que celle que j'ai utilisé pour l’appeler. Le problème ne vient pas d'un programme que je lance mais bien de l'exécutable PB lui-même.
Je sais c'est pas très clair mais ça devrait aller là ^^
Re: [..] console linux
Publié : dim. 22/sept./2013 17:47
par Backup
si tu t'expliquai plus clairement
si j'ai bien compris tu veux ajouter une commande Dos ....
c'est a dire lancer un de tes prg console en passant par l'invite de commande Windows ....
si c'es ça , j'ai deja répondu a ça ici :
http://www.purebasic.fr/french/viewtopi ... =1&t=13552
Re: [..] console linux
Publié : dim. 22/sept./2013 18:13
par NY152
non pas nécessairement ajouter une commande DOS, je veux simplement que toutes les sorties écran d'un programme console PB (et tous les programme qu'il peut être amené à exécuter) se fasse dans la fenetre d'invite de commande qui a appelé le programme et non dans une nouvelle c'est tout.
EDIT :
Un code tout con et à l'arrache pour illustrer ce que je dis
mettez juste ça :
Code : Tout sélectionner
If OpenConsole()
ConsoleTitle("PROGRAMME A LANCER DEPUIS UN INVITE DE COMMANDE")
Print("Voici un simple print()" + #CRLF$)
;ici on lance un programme pour voir où le résultat ira. J'ai pris mencoder car je bosse pas mal avec ce programme en ligne de commande, changez-en le cas échéant c'est juste un test pour le retour ....
RunProgram("mencoder.exe")
Print(#CRLF$ + #CRLF$)
Print("Voici un deuxième print testouille." + #CRLF$)
Print("Le programme va se terminer dans 10 secondes et regardons ce qu'il nous reste dans l'invite de commande qui a lancer ce programme ...")
Sleep_(10000)
EndIf
compilez ce code, ouvrez un invite de commande et exécutez le depuis ce dernier.
Admirez ce qui reste de son exécution une fois celui-ci terminé ...
Absolument rien et en prime on a un deuxième invite de commande qui encombre l'écran.
Re: [..] console linux
Publié : sam. 16/nov./2013 18:37
par NY152
Je suis repassé ici à tout hasard, ça n'enflamme pas les foules ce que j'ai raconté lol