web-dev-qa-db-fra.com

L'application se bloque à partir de la ligne de commande mais fonctionne correctement depuis Unity

Question générale: Comment puis-je imiter le plus étroitement via le terminal la manière dont Unity exécute un programme?

Je suis en mesure d'exécuter avec succès Pidgin (2.10.3) à partir de l'interface Unity (Ubuntu 12.04 LTS), mais lorsque je lance simplement "Pidgin" à partir de la ligne de commande, je reçois un segfault. Idéalement, je voudrais exécuter "Pidgin" à partir de la ligne de commande avec l'indicateur "-d" (débogage) pour voir la sortie de débogage. Je pensais que peut-être Unity utilisait des drapeaux spéciaux, etc. mais le fichier standard /usr/share/applications/Pidgin.desktop dit simplement:

[Desktop Entry] 
Name=Pidgin Internet Messenger 
GenericName=Internet Messenger 
Comment=Chat over IM.  Supports AIM, Google Talk, Jabber/XMPP, MSN, Yahoo and more 
Exec=Pidgin 
Icon=Pidgin
StartupNotify=true 
Terminal=false 
Type=Application
Categories=Network;InstantMessaging; 
X-Ubuntu-Gettext-Domain=Pidgin

Texte Segfault:

** (Pidgin:12897): WARNING **: Could not connect: Connection refused

(Pidgin:12897): LIBDBUSMENU-GLIB-WARNING **: Unable to get session
bus: Could not connect: Connection refused

(Pidgin:12897): libnotify-WARNING **: Failed to connect to proxy

(Pidgin:12897): libindicate-ERROR **: Unable to get session bus: Could
not connect: Connection refused Trace/breakpoint trap (core dumped)
1
ChaimKut

Comparez les variables d'environnement dans le terminal (env) et en exécutant un script via le raccourci du bureau.

Script

#!/bin/sh
env > ~/myenv

Vérifiez si la valeur de DBUS_SESSION_BUS_ADDRESS est différente, car cela semble être le problème.

1
Grzegorz Żur