Après emballage avec mkbundle2, la machine de destination se plaint de libmono.so.Pourquoi?

StackOverflow https://stackoverflow.com/questions/3250752

  •  15-09-2020
  •  | 
  •  

Question

Je pensais que le but de Mkbundle2 était de permettre à une machine sans mono installé pour exécuter une application mono. Mais cela ne semble pas être emballage libmono.so. Je ne sais pas si cela est censé ou non, mais la machine de destination se plaint de ne pas trouver libmono.so.0 lorsque je gère le paquet. Pourquoi serait-il à la recherche de ce fichier? Et si c'est nécessaire, pourquoi serait-il rechercher n'importe où, mais dans le paquet? Et si cela est censé être dans le paquet, pourquoi Mkbundle2 n'a-t-il pas dit là-bas? J'utilise l'option "-deps" pour inclure toutes les dépendances. Est-ce que je manque quelque chose?

Après avoir ajouté l'option - istatique, je reçois ce résultat sur la machine de destination:

Exception non conventionnelle: System.TypeinitialisationException: une exception a été lancée par l'initialisateur de type pour system.windows.forms.xplatui ---> system.dllnotfoundException: libc au système (Wrapper Gestiond-Native ).Windows.Forms.xplatui: Uname (IntPTR) chez System.Windows.Forms.xplatui..ccut () [0x00000] In: 0

Utilisation d'Exporter Mono_Log_Level= Débogage Affiche plus d'informations:

Mono-info: Dllimport tente de charger: 'libc'. Mono-info: Dllimport Loading Lieu: 'libc.so'. MONO-INFO: DLLIMPORT ERREUR ERREUR Loading Bibliothèque: '/USR/LIB64/LIBC.SO: En-tête elfe invalide'. MONO-INFO: DLLIMPORT Loading Bibliothèque: './libc.so'. MONO-INFO: DLLIMPORT ERREUR ERREUR Loading Library './libc.so: impossible d'ouvrir le fichier d'objet partagé: aucun fichier ou répertoire de ce type. Mono-info: Dllimport Loading: 'libc'. MONO-INFO: DLLIMPORT ERREUR ERREUR Chargement de la bibliothèque 'libc: impossible d'ouvrir le fichier d'objet partagé: aucun fichier ou répertoire de ce type'.

Cela signifie-t-il que j'essaie de courir sur une machine avec du matériel incompatible? Les deux machines sont SUSE Linux Enterprise Server 11 (X86_64).

Était-ce utile?

La solution

de ici Nous avons ce:

- DEPS: cette option va regrouper toutes les assemblées référencées pour le Assemblages répertoriés sur l'option de ligne de commande. Ceci est utile pour distribuer une image autonome.

Êtes-vous sûr que vous n'oubliez pas de faire référence à un assemblage sur la ligne de commande?

de ce fil:

Mono Communauté> Général> Communauté mono> Mkbundle, statique , lgmodule

Il semble que Mkbundle n'est pas responsable de l'emballage de cet ensemble. L'utilisateur a résolu le problème en installant des packages associés à GLIB manquants.

Regardez le paramètre statique ici :

- STATIC: Par défaut, MkBundle Liens de manière dynamique vers Mono et Glib . Cette option le cause de lier de manière statique à la place.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top