2012-04-30 30 views
10

GLibは移植性ライブラリなので、この質問は奇妙に聞こえるかもしれませんが、移植性はどうですか? 1つの例を挙げてみましょう:GLib(GObjectを含む)はマイクロコントローラ上で動作するのですか、それともある種のオペレーティングシステムに依存していますか?GLibはどのように移植可能ですか?

私はGLibをどこで使うことができますか、それともCコードを実行できる場所であれどこでも動作しますか?

答えて

6

私はGLibのの依存関係が何であるかに見つけることができる唯一の資源はここにある:「依存関係」セクションで

Compiling the GLib package

ルック - 非オプションの依存関係があるように見える:

  • iconv機能
  • gettext機能
  • スレッドimplemen tation
  • PCRE library

これは、あなたがどんなターゲットシステムにこれらのそれぞれを提供(またはポート)する必要があるということです(例えば、マイクロコントローラ)。克服できない障壁ではありませんが、一般に、スレッド化の実装は、ある種のオペレーティングシステムを意味します。

また、GLibは "ホストされた" C環境に依存するように見えるので、ターゲット環境にも移植された標準Cライブラリが必要です( "自立型" C環境では、標準Cのサブセットは、標準Cライブラリを移植する必要はありません)。 Hosted and Free-Standing Environmentsを参照してください。これもまた、一般に、少なくとも非常にのオペレーティングシステムの基本形式を意味する。

関連する問題