rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Lancer une application via la console ?

Posté par duddy67, le mardi 31 juillet 2007 à 16:27:39
Bonjour,

Je n'arrive pas à lancer une application à partir de la console (sous KDE).
J'ai le message:

Can't open display:

Par contre si je clique directement sur le fichier executable, l'appli se lance normalement.
J'ai lu quelque part que ça venait du fait qu'il fallait être root (et pas su -),
mais même en me logant en root j'ai toujours le même message.

Quelqu'un pourrait-il m'aider ?

Merci
Configuration: Linux
Konqueror 3.5
Répondre à duddy67  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
lami20j, le mardi 31 juillet 2007 à 16:30:33
Salut,

De quelle commande s'agit-il?
Affiche aussi ce que tu fait ainsi que le message d'erreur.
lami20j
Répondre à lami20j

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
duddy67, le mardi 31 juillet 2007 à 16:41:16
Ben en fait je compile mes appli dans Konsole (avec gcc et la librairie Fltk).
Donc une fois mon appli compilée (avec la commande 'make'), je la lance avec la commande:
./monAppli

c'est là que j'ai le message:
Can't open display:
Répondre à duddy67

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marc, le mardi 31 juillet 2007 à 17:08:09
Bonjour,

Quel serveur graphique utilises-tu ?

Peux tu nous montrer les variables d'environnement relatives a ce serveur ?
Répondre à Marc

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
duddy67, le mardi 31 juillet 2007 à 18:47:06
J'utilise Xorg, par contre je sais pas comment faire pour afficher les variables d'environnement
dont tu parles (je débute avec Linux)
Répondre à duddy67

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marc, le mardi 31 juillet 2007 à 20:47:18
Regarde la variable $DISPLAY.
Normalement, elle doit avoir une valeur.

Test avec "echo $DISPLAY";
Tu peux aussi faire "export | grep DISPLAY";

par exemple, chez moi :
swed@swed:~$ echo $DISPLAY
:0.0
swed@swed:~$

Si cette variable n'a pas de valeur, tente de faire "export DISPLAY=0:0"
et de relancer l'application depuis la console.

En espèrant t'avoir aidé,
Bonne soirée,

Marc
Répondre à Marc

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marc, le mardi 31 juillet 2007 à 20:50:16
Désolé, je voulais dire :
Si cette variable n'a pas de valeur, tente de faire "export DISPLAY=:0:0"
Répondre à Marc

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
duddy67, le mercredi 1 août 2007 à 09:41:38
Merci pour ton aide ;-)
Ma variable DISPLAY était effectivement vide. J'ai donc fais:

"export DISPLAY=:0:0"

mais maintenant le message d'erreur c'est:

X11TransSocketINETConnect() can't get address for :0:6000: Name or service not known
Can't open display: :0:0

Quelqu'un aurait une idée ?
Répondre à duddy67

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marc, le mercredi 1 août 2007 à 11:40:59
Normalement, la variable $DISPLAY est automatiquement initialisée lors du démarrage de ton serveur graphique... c'est assez étrange qu'elle ne le soit pas.

Pourrais tu nous montrer la log du démarrage de X ? (/var/log/X......)
Je pense que ca pourrait peut-être aider ...
Répondre à Marc

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
lami20j, le mercredi 1 août 2007 à 11:45:29
Tu n'as toujours pas répondu à ma question lancer une application via la console#1

dit le nom de l'application lami20j
Répondre à lami20j

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
duddy67, le mercredi 1 août 2007 à 12:47:30
J'ai 2 fichiers X dans /var/log :
Xorg.0.log et Xorg.0.log.old
Lequel des 2 ?
A tu besoin de toutes les infos car il y en a une sacrée tartine !

>Tu n'as toujours pas répondu à ma question lancer une application via la console#1
>De quelle commande s'agit-il?
./monAppli

>dit le nom de l'application
monAppli (c'est le nom de mon prog)
Répondre à duddy67

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
meuhlol, le mercredi 1 août 2007 à 12:55:52
un appli que t'as codé? ou qu'est-ce que c'est que ce nom "monAppli" lol
Si ca serait un jeu ou un autre truc qui a besoin d'accélération 3D d'activéé, faut voir si t'as activé l'accélération 3D.

Sinon essaye ceci:
cd /rep/de/tonsoft && X :2 & sleep 3 && DISPLAY=:2 ./tonAppli
"La liberté n'est pas l'absence d'engagement, mais la capacité de choisir" © Paulo Coelho
Répondre à meuhlol

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marc, le mercredi 1 août 2007 à 13:39:46
duddy67 :

le log Xorg.0.log est celui de ton dernier demarrage de X
le .old est celui de ton avant dernier démarrage

essaye de chercher un message d'erreur, ou quelquechose qui nous parle du DISPLAY, ou quelquechose qui paraît anormal...
(au pire met ca sur un pastebin pour qu'on jette un oeil)

____

meulol :

Le message d'erreur 'Can't open display: *VIDE*' n'a rien à voir avec un problème d'accélération graphique qui n'est pas activé, c'est certain.
(de plus je ne comprend pas la commande que tu proposes).


Cordialement,
Marc
Répondre à Marc

13


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
meuhlol, le mercredi 1 août 2007 à 13:45:34
cd /rep/de/tonsoft && X :2 & sleep 3 && DISPLAY=:2 ./tonAppli

Je ne la connais pas super bien non plus à vrai dire, mais elle m'as aidée avec mes soucis de RegnumOnline (un MMORPG gratos)
J'essayais de lancer le launcher du jeu via la console, mais quand je la lancais ca me parlait avec les errors de DISPLAY.
Un mec m'as aidé en me filant cette commande =)
Le X je crois c'est pour booter le xorg, sleep - un temps d'attente(?) display=:2 pour préciser le display et à la fin le lancement d'appli.
"La liberté n'est pas l'absence d'engagement, mais la capacité de choisir" © Paulo Coelho
Répondre à meuhlol

14


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
natas, le mercredi 1 août 2007 à 14:02:02
salut,

attention la commande à taper est "export DISPLAY=0:0" et non pas "export DISPLAY=:0:0" (il ya un ":" en trop)

si tu lance ton applis en tant que root il faut au préalable lui donner les droit d'accès au serveur X.
xhost + root

Vous hésitez entre Linux et Windows? Vous préférez perdre du temps ou de l'argent ??
Répondre à natas

15


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
duddy67, le mercredi 1 août 2007 à 15:34:59
meuhlol:
Ta commande a effectivement bien lancé le prog sauf que:
Je me suis retrouvé dans un environnement graphique plutot austère (écran gris
et juste une croix comme pointeur de souris) et impossible de sortir de là (ni de faire quoi que ce soit d'ailleur).
c'est quoi cet environnement et comment on en sort ?
Toutefois même si ça fonctionne (le prog est bien lancé), j'aimerais pouvoir lancer mon appli dans le même environnement (KDE) et avec une commande plus simple

natas:
Aprés avoir rectifié la commande "export DISPLAY=0:0"
voici ce qu'il m'affiche lorsque j'essaie de donner les droit
d'accès au serveur X.

Duddy:~# xhost + root
xhost: unable to open display ""
Duddy:~#

Marc:
Je n'ai pas trouvé de message d'erreur ni rien qui ait un rapport
avec DISPLAY. J'essaierai de mettre un lien sur mon fichier tout à l'heure.
Répondre à duddy67

17


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
meuhlol, le mercredi 1 août 2007 à 19:10:06
cd /rep/de/tonsoft && X :2 & sleep 3 && DISPLAY=:2 ./tonAppli


X correspond au serveur Xorg (le 2 à côté je sais pas)
le sleep suivi est pour un "délaie d'attente"
Display précise le display

Donc essayes la même chose mais vires "X :2 & sleep 3"

"La liberté n'est pas l'absence d'engagement, mais la capacité de choisir" © Paulo Coelho
Répondre à meuhlol

16


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
dubcek, le mercredi 1 août 2007 à 16:09:07
La commande xhost donne les droits à un host, pas à un utilisateur:
xhost +`hostname`

pour donner des droit sur un display à des utilisateurs:
man xauth
par ex:
xauth extract - $DISPLAY:0 | xauth -f /user/name/.Xauthority merge -
Répondre à dubcek

18


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
natas, le jeudi 2 août 2007 à 20:08:13
salut dubcek
La commande xhost donne les droits à un host, pas à un utilisateur

tu es sur, car le man precise le contraire?

extrait du man chez moi
The given name (the plus sign is optional) is added to the list
allowed to connect to the X server.  The name  can  be  a  host
name or a user name.


Vous hésitez entre Linux et Windows? Vous préférez perdre du temps ou de l'argent ??
Répondre à natas

19


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
dubcek, le vendredi 3 août 2007 à 10:14:49
Alors je n'ai rien dit, je suis pas à jour
Répondre à dubcek

20


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
duddy67, le dimanche 5 août 2007 à 11:15:48
>Donc essayes la même chose mais vires "X :2 & sleep 3"

J'ai l'erreur :
Can't open display: :2

Bon, c'est vraiment bizzare de pas pouvoir lancer une appli en mode
console sous linux ! (il n'y a aucun pb sous windows)
J'ai mis un fichier txt de mon Xorg.0.log en téléchargement ici

http://web8.free.fr/xorg.txt

si jamais quelqu'un pouvait voir où ça cloche.

Merci d'avance
Répondre à duddy67

21


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
dubcek, le dimanche 5 août 2007 à 12:24:01
Pourquoi ce :2 ?
avec un écran et un clavier, ça devrait être :0.0 ?
Répondre à dubcek

22


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 duddy67, le lundi 6 août 2007 à 18:49:07
ça y est j'ai trouvé :-)
Ben en fait j'ai simplement édité la variable DISPLAY dans .bashrc

export DISPLAY=:0

Et maintenant mon appli se lance depuis la console.
Mais c'est quand même bizzare que la variable n'était pas initialisée par défaut.
Cela vient peut être de mon installation...
Répondre à duddy67
Logiciels pertinents trouvés dans les téléchargements
Télécharger Microsoft .NET Framework 2.0 (x86) 2.0Microsoft .NET Framework 2.0 (x86) - Le package redistribuable de Microsoft .NET Framework 2.0 installe le runtime .NET Framework et les fichiers associés requis...Catégorie: Librairies (DLL)
Licence: Freeware/gratuit
Télécharger Unlocker 1.8.7Unlocker - Unlocker est un outil permettant de forcer la suppression d'un fichier lorsque le système refuse de le faire. Unlocker...Catégorie: Gestion de fichiers
Licence: Freeware/gratuit
Télécharger GLPI 0.71GLPI - GLPI est une application libre, distribuée sous licence GPL destinée à la gestion de parc informatique et de helpdesk. ...Catégorie: Gestion de parc
Licence: Freeware/gratuit
Télécharger JBoss 4.2.1.GAJBoss - JBoss est un serveur d'application J2EE (Java 2 Enterprise Edition) implémenté en Java et open source.Catégorie: Java
Licence: Open Source
Plus de logiciels gratuits sur « Lancer une application via la console ? »