MKBundle2で梱包した後、宛先マシンはlibmono.soについて不満です。どうして?

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

  •  15-09-2020
  •  | 
  •  

質問

Mkbundle2の目的は、モノがモノラルアプリケーションを搭載していない機械を設置することを許可することを考えた。しかし、それは包装libmono.soであるようです。私はそれが想定されているかどうかわからないが、宛先マシンはバンドルを実行するときにlibmono.so.0が見つからないことを不満に訴えている。そのファイルを探しているのはなぜですか?そしてそれが必要ならば、なぜどこにでもどこにでも見ているのでしょうか。そしてそれが束の中にいると思われるならば、なぜmkbundle2がそこにそれを置くことはなかったのですか?私はすべての依存関係を含めるための "--deps"オプションを使っています。私は何かがありませんか?

--staticオプションを追加した後、宛先マシンでこの結果を取得します。

未処理例外:System.TypeInitializationException:System.Windows.Forms.xplatui ---> System.DllNotFoundException:libcのタイプ初期化子によってスローされました。 at(ラッパー管理対象)System.Windows.Forms.xplatui:uname(intptr) at System.Windows.Forms.xplatui..cctor()[0x00000] in:0

エクスポートの使用MONO_LOG_LEVEL=デバッグを表示する詳細:

MONO-INFO:DLLIMPORTを読み込もうとしています: 'libc'。 MONO-INFO:DLLIMPORTロード位置: 'libc.so'。 Mono-Info:Dllimportエラーローディングライブラリ: '/usr/lib64/libc.so:無効なELFヘッダ'。 Mono-Info:Dllimport Loading Library: './libc.so'。 MONO-INFO:DLLIMPORTエラーライブラリのローディングLibrary './libc.so:共有オブジェクトファイルを開くことはできません。そのようなファイルまたはディレクトリはありません。 MONO-INFO:DLLIMPORTローディング: 'libc'。 Mono-Info:Dllimportエラーライブラリのローディング 'libc:共有オブジェクトファイルを開くことができません:そのようなファイルまたはディレクトリ'。

これは私が互換性のないハードウェアでマシン上で実行しようとしていることを意味しますか?どちらのマシンもSUSE Linux Enterprise Server 11(x86_64)です。

役に立ちましたか?

解決

ここにいます

- deps:このオプションはすべての参照されたアセンブリをバンドルします。 コマンドラインオプションにリストされているアセンブリ。これは自己完結型画像を分散させるのに役立ちます。

コマンドラインにアセンブリを参照するのを忘れないでください。

このスレッドから:

モノコミュニティ>一般>モノコミュニティ> Mkbundle、静的、lgmodule

このアセンブリの梱包については、Mkbundleが責任を負いません。ユーザーは、欠けているGLIB関連のパッケージをインストールすることによって問題を解決しました。

静的パラメータここ

- 静的:デフォルトでMkbundleはMonoと Glib に動的にリンクします。このオプション 代わりに静的にリンクします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top