Si je veux lancer l'application monodevelop
, j'ai besoin de chdir vers /usr/lib/monodevelop/Bin
puis exécutez ./MonoDevelop.exe
. C'est la même chose pour toutes les autres applications Mono telles que banshee
, tomboy
, etc.
Si j'essaie d'exécuter les applications Mono à partir d'un autre emplacement en exécutant simplement monodevelop
, ou même à partir de leur propre répertoire, j'obtiens TypeInitializationExceptions comme ceci :
[email protected] :/usr/lib/monodevelop/bin$ monodevelop
ERREUR FATALE [2012-05-04 11:24:39Z] :MonoDevelop n'a pas pu démarrer. Certains
des assemblages requis pour exécuter MonoDevelop (par exemple gtk-sharp,
gnome-sharp ou gtkhtml-sharp) peuvent ne pas être correctement installés dans le
GAC. System.TypeInitializationException :une exception a été générée par
l'initialiseur de type pour Gtk.Application —>
System.EntryPointNotFoundException :glibsharp_g_thread_supported at
(wrapper managé vers natif) GLib.Thread :glibsharp_g_thread_supported
() sur GLib.Thread.get_Supported () [0x00000] dans :0
dans Gtk.Application..cctor () [0x00000] dans :0 —
Fin de la trace de la pile d'exceptions internes — à
MonoDevelop.Ide.IdeStartup.Run (options MonoDevelop.Ide.MonoDevelopOptions
) [0x0007e] dans
/home/behrooz/Desktop/Monodevelop/monodevelop-2.8.6.5/src/core /MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:95
sur MonoDevelop.Ide.IdeStartup.Main (System.String[] args) [0x0004f] dans
/home/behrooz/Desktop/Monodevelop /monodevelop-2.8.6.5/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:503
Pourquoi est-ce ?
J'ai essayé de réinstaller tous les packages Mono, Wine, GTK, Glib, X, Gnome.
apt-get --purge --reinstall install $(dpkg --get-selections | grep mono | grep install | grep -v deinstall | awk'{print $1}')
J'ai aussi essayé strace sur "open" et je n'ai rien obtenu par moi-même.
Configuration du système :
- Debian 6.0-mises à jour 64 bits
- Kernel 3.2.0-2, 3.2.0-1, 3.1 et 3 EDIT :pas une chose de noyau
- Gnome 3.4 EDIT :mais un truc de gnome
- Mono 2.10.5
TLS: __thread SIGSEGV: altstack Notifications: epoll Architecture: amd64 Disabled: none Misc: softdebug LLVM: supported, not enabled. GC: Included Boehm (with typed GC and Parallel Mark)
mise à jour :avec la mise à niveau vers le nouveau MonoDevelop 3.0.2 et le dernier Mono, je peux exécuter MonoDevelop avec la commande monodevelop
dans le terminal, pas de chdir. mais gnome-shell ne peut pas l'exécuter.
Enfin trouvé :
en tant que root :
cd /usr/local/
find | grep mono|xargs rm -rf
# Use with caution/some applications may get messed up (stellarium has MONOchrome images...)
Réponse acceptée :
Il semble que vous ayez compilé et installé monodevelop
à partir de la source - avez-vous fait de même pour les dépendances telles que gtksharp
? Depuis banshee
et tomboy
sont cassés, il semble que vous ayez une dépendance partagée entre les programmes cassés, et c'est un candidat évident. Les applications mono CLI fonctionnent-elles ?
À partir de la documentation de construction de MonoDevelop :
Nous vous recommandons fortement de tout installer à partir des packages si possible. Si ce n'est pas vous, vous devez utiliser un environnement mono parallèle. N'installez rien sur /usr ou /usr/local à moins que vous ne compreniez parfaitement les implications de le faire.
Si les autres applications mono ne s'exécuteront qu'à partir du monodevelop
installé tree, et la réinstallation des packages n'a pas aidé, vous pourriez avoir un fouillis de choses supplémentaires flottantes que l'installation source a ajoutées et qui interfèrent avec mono
trouver ses bibliothèques, éventuellement avec des chemins codés en dur dans le monodevelop
installer.
Ma Debian-fu n'est pas forte, mais il devrait y avoir un moyen d'identifier les fichiers dans /usr
que dpkg
ne sait pas, cela pourrait être un point de départ.