GNU/Linux >> Linux の 問題 >  >> Linux

32 ビット ライブラリを 64 ビット プログラムにリンクする

IPC を使用して 64 ビット コードから 32 ビット プラグインを実行する例については、オープン ソースの NSPluginWrapper を参照してください。


それは可能ですが、舞台裏で深刻な魔法がなければ不可能であり、あなたはその答えを気に入らないでしょう. 32ビットCPUをエミュレートするか(冗談ではありません)、メインプロセスを32ビットに戻します。ただし、エミュレートは遅い場合があります。

これは、この手法の概念実証です。

次に、すべてのテーブルを保持します 32 ビット ライブラリとの間でメモリ アクセスを行い、同期を維持します。理論的な完全性に到達するのは非常に困難ですが、実行可能なものは非常に簡単ですが、非常に退屈なはずです。

ほとんどの場合、別の方法で提案されているように、2 つのプロセスとその 2 つの間の IPC が実際には最も簡単であると思います.


いいえ。64 ビット プログラム内の 32 ビット コードに直接リンクすることはできません。

最良のオプションは、64 ビット プラットフォームで実行できる 32 ビット (スタンドアロン) プログラムをコンパイルし (ia32 を使用)、プロセス間通信の形式を使用して 64 ビット プログラムから通信することです。


Linux
  1. 特定の Linux が 32 ビットか 64 ビットかを判別する方法は?

  2. 64 ビット Unix タイムスタンプ変換

  3. 32 ビット演算と 64 ビット演算のパフォーマンス

  1. Linuxで共有ライブラリを別の共有ライブラリとリンクする

  2. リンクエラーに対する再配置R_X86_64_32S

  3. 64 ビットの Ubuntu または 32 ビットをインストールしますか?

  1. 64 ビット Linux での 32 ビット ライブラリの検索

  2. ハードウェアと OS のビット数を確認する方法は?

  3. 自分の PC (>10 年) で 64 ビットの ubuntu を実行できますか?