問題タブ [mkbundle]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mono - mkbundle で生成されたバイナリが ARMv7h で SIGSEGV を引き起こすが、Mono では問題なく動作する
現在、ARMv7h の archlinux で Mono をテストしています。まず、この単純なプログラムをテストしました。
pacman
クロスコンパイルではなく、経由でインストールされたネイティブ パッケージとして Mono を使用します。実行すると、意図したとおりに動作します。
を使用してこのアセンブリをバンドルしようとするとmkbundle
、エラーなしでコンパイルされます。
/usb/ は、マウントされた外部 USB ドライブです。mkbundle
ルートとして呼び出されます。結果のバイナリを実行しようとすると:
そしてシェルに戻ります。バイナリは追加情報を提供しません。この特定のアーキテクチャのフラグを見逃していませんか?
xamarin - mkbundle --static フラグを使用して Mac コンソール アプリ用の pkg をビルドする方法
Xamarin Studio を使用してコンソール Mac ユーティリティを作成しました。
次に、次を使用してバンドルを作成しました。
- mkbundle myapp.exe *.dll -o myapp --deps
- pkgbuild --analyze --root リリース名.plist
- pkgbuild --root リリース --component-list name.plist --sign "john doe" --install_location /Applications/myapp myapp.pkg
myapp.pkg を別のマシンにインストールしてアプリを実行しようとすると、ランタイム エラー "libmonoboehm-2.0.1.dylib' referenced from myapp - image not found' が発生しました。
これは、マシンに mono ランタイムがインストールされていなかったことを示しています。それは正しいです。mono ランタイムがインストールされていません。
「--static」オプションを指定して mkbundle を実行しようとしました。ただし、pkgbuild --analyze は空のコンポーネント リストを返します。
私の質問は、mkbundle を --static フラグで使用するときに展開 pkg を構築する方法ですか? これは可能ですか?
前もって感謝します
gcc - Mono の mkbundle を使用して Linux から ARM 用にクロスコンパイルする
Mono の mkbundle ツールを使用して、AMD64 システム (VM で実行されている Ubuntu 14.04) から ARM (RaspberryPi) 用のネイティブ アプリをコンパイルしようとしています。
Mono のバージョンは 4.4.2.11 (これを行った時点で最新) で、Mono のパッケージ リポジトリからインストールされていますが、4.2.3.4 でも試しました。
私は走っています:
これを RaspberryPi 自体で実行すると問題なく動作します (ただし、CC 変数と AS 変数を設定する必要はありません)。
AMD64 VM から実行すると、最終的に次のコマンドが実行されます。
結果は次のとおりです。
/usr/lib/pkgconfig/../../lib/libmono-2.0.a: シンボルの追加中にエラーが発生しました: ファイル形式が認識されません collect2: エラー: ld が 1 つの終了ステータスを返しました
libmono-2.0.a
がアーキテクチャ固有のパッケージに由来することに気づき、http: //download.mono-project.com/repo/debian/pool/main/m/mono/ から armel アーキテクチャ パッケージをダウンロードし、ホーム ディレクトリに展開しました ( )があるので/home/gregmac/libmono-armel/usr/lib/libmono-2.0.a
、試してみました:
また、LIBRARY_PATH と LD_LIBRARY_PATH を に設定しようとしまし/home/gregmac/libmono-armel/usr/lib
たが、常に同じ問題が発生します。
完全な出力 (-v オプションを含む):
私も同じコマンドを試してみましたが、ファイルの代わりに--static
同じエラーが発生しました:.so
.a
/usr/lib/pkgconfig/../../lib/libmono-2.0.so: ファイルが認識されません: ファイル形式が認識されません collect2: エラー: ld が 1 終了ステータスを返しました
ここで明らかな何かが欠けていますか?gcc が の/usr/lib/
代わりにまだ探しているのはなぜ/home/gregmac/libmono-armel/usr/lib
ですか? mkbundle
元のコマンドがこれを正しく呼び出すことができるように設定する必要がある他の環境変数はありますか?
c# - Windows で mkbundle がリンカー エラーで失敗する
.NET がインストールされていない環境で実行する必要があるコンソール ユーティリティを構築しようとしています。Mono の mkbundle はこの問題の優れた解決策のようですが、単純なプロジェクトで cygwin を介して Windows 10 で mkbundle (Mono 4.6.1.3) を実行すると、次のような出力が表示されます。
これまでのところ、最新の Windows SDK をインストールし、INCLUDE と LIB の両方の環境変数を設定しましたが、これらのリンカー エラーを解決する方法に少し行き詰まっています。