После упаковки с MKBundle2 станок назначения жалуется на LibMono.so.Почему?

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

  •  15-09-2020
  •  | 
  •  

Вопрос

Я думал, что цель mkbundle2 должна была позволить машине без мономонтажной установки для запуска моно-приложения. Но это не так, кажется, упаковывает libmono.so. Я не уверен, что предполагается ли он или нет, но пункт назначения жалуется, что он не может найти libMono.so.0, когда я запускаю пакет. Почему это будет искать этот файл? И если это нужно, зачем это искать куда угодно, но в пакете? И если это должно быть в связке, почему не наложил его там? Я использую опцию «--deps» для включения всех зависимостей. Я что-то упускаю?

После добавления параметра --static я получаю этот результат на станке назначения:

Необработанное исключение: System.TypeinitializationException: исключение было брошено инициализатором типа для System.Windows.forms.xplatui ---> system.dllnotfoundException: libc AT System System.Windows.forms.xplatui: Uname (IntPTR) В System.Windows.forms.xplatui..cctor () [0x00000] в: 0

Использование экспорта mono_log_level= debug показывает больше информации:

. Mono-info: dllimport, пытаясь загрузить: 'libc'. MONO-INFO: DLLLIMPORT LOACLION Расположение: 'libc.so'. MONO-INFO: Библиотека загрузки ошибок DLLIMPORT: '/usr/lib64/libc.so: неверный заголовок эльфа. Моно-информация: DLLLIMPORT Loading Library: './Libc.co'. Mono-INFO: DLLLIMPORT Ошибка загрузки библиотеки загрузки ./Libc.SO: не удается открыть файл общего объекта: нет такого файла или каталога. MONO-INFO: DLLLIMPORT LOAGE: «LIBC». MONO-INFO: DLLLIMPORT Ошибка загрузки библиотеки LIBC: не удается открыть общий объект файла объекта: нет такого файла или каталога.

Это означает, что я пытаюсь бежать на машине с несовместимым оборудованием? Оба машины SUSE Linux Enterprise Server 11 (x86_64).

Это было полезно?

Решение

from Здесь у нас есть это:

- Депон: Эта опция будет объединять все ссылки на сборы для Сборки, перечисленные в параметрах командной строки. Это полезно для распространения автономного изображения.

Вы уверены, что вы не забываете ссылаться на сборку в командной строке?

Из этой темы:

Mono Community> General> Mono Community> MkBundle, статический , lgmodule

Похоже, что MkBundle не несет ответственности за упаковку этой сборки. Пользователь решил проблему, установив отсутствующие пакеты, связанные с GLIB.

Посмотрите на статический параметр Здесь :

- Статическое: по умолчанию mkbundle динамически ссылается на моно- и glib . Эта опция заставляет его статическую ссылку вместо этого.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top