5

.dllや.soのようなものがありますが、クロスプラットフォームですか?

4

5 に答える 5

8

Javaの.classファイルと.jarアーカイブは、Monoで実行される.Netアセンブリと同様に、この要件を満たします。

于 2010-01-25T22:35:03.520 に答える
5

ユニバーサル実行可能フォーマット?いいえ。

これが、仮想マシン(java)またはIL(.Net)が存在する理由です。同じソースコードをユニバーサル中間言語にコンパイルして、プログラマーなしで基盤となるシステムバイトコードのフレームワークで実行できるようにすることができます。システム間の違いを知る必要があります。

実際には、VMはすべてのプラットフォームに一貫して実装する必要があります。

于 2010-01-25T22:36:21.560 に答える
4

c / c ++ AFAIKの場合ではなく、javaには類似した.jarファイルがあります。

于 2010-01-25T22:32:08.083 に答える
2

何を求めているのかは明確ではありませんが、「クロスプラットフォームで動的にロード可能なC / C ++ライブラリを作成するにはどうすればよいですか」と尋ねる場合、答えはGNULibtoolです。それらの構築と利用をサポートし、さらにランタイムサポート機能を備えています

于 2010-01-25T23:03:51.450 に答える
1

他の人が言ったように、実際にはそうではありません。おそらく、 LLVMはいつの日かギャップを埋め、静的/動的オブジェクトライブラリと同じようにLLVMに相当するものを見ることができるようになるでしょう。

静的オブジェクトライブラリが一般的に移植可能でない理由のいくつかについては、この返信を見てください。私が一般的に言うのは、freebsdがLinuxバイナリを実行したり、WINEがwin32ランタイムの大部分を実装したりするなど、OSベンダーが十分に気を配っていれば可能であるためです。

于 2010-01-25T22:37:29.470 に答える