問題タブ [fat-binaries]
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.
windows - アプリの64ビットバージョンと32ビットバージョンを同じバイナリにロールしますか?
64ビットと32ビットの両方のプラットフォームにデプロイしようとしているアプリケーションがあります。コンパイルされた両方のバージョンのコードを同じバイナリ、つまりAppleとNeXTのファットバイナリに入れる方法はありますか?
理想的には、実行するコードのバージョンを実行時に決定する1つの.exeを出荷できます。WindowsXP以降を対象としています。
macos - 64ビットOS X 10.6でファットバイナリを32ビットにする適切な方法は?
ユーザーに「32 ビット モードと 64 ビット モードのどちらで実行しますか」と尋ねたところ、ユーザーは 32 ビットを選択したとします。この事実をオペレーティング システムに登録するにはどうすればよいですか? archコマンドを見てきましたが、バイナリをラップするスクリプトを書く必要はありません。これを行うにはplist-yの方法があると思いますが、ドキュメント(arch以外)が見つかりません。
iphone - 別の静的ライブラリを含む armv6 および armv7 用の iPhone 静的ライブラリの構築
「マスター」スタティック ライブラリ ターゲットを持つ Xcode プロジェクトがあります。これには、他の Xcode プロジェクトの他のスタティック ライブラリの束が含まれています。
「Optimized (armv6 armv7)」のマスター ライブラリ ターゲットをビルドすると、CreateUniversalBinary ステップ中の最後のフェーズでエラーが発生します。マスター ライブラリに含まれるライブラリの .o ファイルごとに、次のエラーが報告されます (たとえば、FBConnectGlobal.o ファイル)。
最後に、Xcode はビルドが成功したことを通知します。ただし、アプリケーション プロジェクトで最終スタティック ライブラリを使用すると、ビルドの一部 (armv6) で重複するシンボルが検出され、ビルドの他の部分 (armv7) でシンボルが見つからないため、ビルドされません。
これを修正する方法はありますか?
M
iphone - armv6、armv7、および i386 用のスタティック ライブラリ (fat) をコンパイルするにはどうすればよいですか
この質問が何度か出されたことは承知していますが、私の目標は、Web を検索して見つけたものとは少し異なります。具体的には、私はすでに iPhone 用の静的ライブラリを構築できていますが、構築できる最終的なファット ファイルには、arm および i386 アーキテクチャしか含まれていません (また、arm が何を参照しているのかはわかりません: v6 または v7 ですか?)。armv6 と armv7 用に特別にコンパイルすることはできず、lipo を使用して両方のアーキテクチャをマージします。lipo ツールは、同じアーキテクチャ (armv6 または armv7 ではなく、arm) が armv6 ライブラリと armv7 ライブラリの両方に存在することを訴えます。
誰かが armv6 と armv7 のビルド方法を正確に説明でき、それらのライブラリを lipo を使用してファット ファイルにマージできますか?
EDIT : Xcode を使用せずにビルドする必要がありますが、従来の UNIX ライブラリを直接コンパイルする必要があります。
iphone - iOSでは、クラッシュレポートで実行されていたアーキテクチャを特定する方法はありますか?
iOSでのクラッシュレポート(記号化されていない)を考えると、どのアーキテクチャ(armv6またはarmv7)がデバイスによって実行されていたかを判断する方法はありますか?
なぜ私は尋ねるのですか?アーカイブされたdSYM/実行可能ファイルに関連付けられていないクラッシュレポートをいくつか受け取りました。そのため、自動化されたツールでそれらを象徴することはできません。クラッシュファイルに記録されたUUIDを、dSYMが保持されているリリースに変更して実験したいと思います(2つのリリース間の変更は、おそらくリソースファイルの変更[画像]であるため、コンパイルされたコードは同一である必要があります)。これにより、自動化されたツールを使用してレポートを象徴し、意味のあるクラッシュデータを抽出できるようになる可能性があります。
dwarfdumpは、実行可能ファイルとdSYMが期待どおりに一致していることを示していますが、各(ファットバイナリ)armv6とarmv7に2つのアーキテクチャがあることも示しています。UUIDをクラッシュレポートにすばやく置き換えることができるようにするには、クラッシュ前にデバイスで使用されていたアーキテクチャを知る必要があります。
iphone - iOS では、実行可能ファイルの UUID がどのように生成され、どのような情報がそこにエンコードされるかを知っている人はいますか?
iOS でコンパイルされたアプリケーションには、コンパイル時に識別子 (UUID) が割り当てられます。これらの識別子は、dwarfdump ツールによって明らかになる場合があります。UUID がどのように生成され、その中にどのような情報がエンコードされているかを知っている人はいますか?
iphone - iOSでは、特定のUUIDに対してどの記号があるかをすばやく確認する方法はありますか?
iOSでは、UUIDと呼ばれる一意の識別子がコンパイル時に割り当てられます。時間の経過とともに、開発者はさまざまな識別子を持つ多くのビルドを蓄積する可能性があります。場合によっては、UUIDに関連付けられているシンボルファイルがどのUUIDに保存されているかをすばやく特定すると便利なことがあります。どのUUIDがシンボルを保持しているかをすばやく識別する方法はありますか?
cuda - __cudaRegisterFatBinary および __cudaRegisterFunction 関数のパラメーターは何ですか?
私は2つの機能に出くわしました
__cudaRegisterFatBinary()
と
__cudaRegisterFunction()
nvcc がそれをソースコードに挿入して、コンパイルされたcubinへのハンドルを取得し、プログラムをランタイムに登録することを理解しています。
誰かが私に説明したり、関数の各パラメーターに関する情報を見つけることができる場所を教えてもらえますか? __cudafatcudabinaryrec
具体的には、最初の関数で使用されるポインターについて詳しく知りたいです。そして、2番目の関数のホスト関数とデバイス関数のポインターについて。
ありがとうございました
java - Java 用のユニバーサルまたは「ファット」クラス ファイルは存在しますか?
ファット バイナリは、複数のアーキテクチャで実行できるバイナリです。基本的に、これは 2 回コンパイルされたプログラム (アーキテクチャごとに 1 回) で構成され、同じファイルに書き込まれます。おそらく最もよく知られている例は、Intel と Power PC の両方のアーキテクチャ用にプログラムをコンパイルし、同じ実行可能ファイルから実行できる Apple の「ユニバーサル」バイナリです。
Java は JVM 上で実行され、JVM がサポートされている任意のコンピューターから実行できるため、これは Java では決して問題ではありませんでした。ただし、Android は現在非常に人気があり、Android の VM (Dalvik) は JVM と互換性がありません。コードを 2 回コンパイルし、JVM と Dalvik の両方で実行できるクラス ファイルを作成する方法はありますか? そうでない場合、これは可能ですか?