16

Apple がコードをオープンソース化しているので、これは可能ですか ( libdispatch?) これをどのように利用できるかについて、私は少し混乱しています。これは、どのアプリケーションでも利用できる API を備えたライブラリのようなものですか、それとも Mac OS X に組み込まれた OS の機能ですか? Mac および iPhone (iOS 4) 用にビルドされたアプリケーションだけで、このライブラリを利用できますか?

gccApple が導入した新しいセマンティックと互換性を持たせるには、ポートを実行する必要があると思います。

4

2 に答える 2

14

ほぼ1年後ですが、Ubuntu Nattyでとても楽しく使用しています。適切なパッケージが Oneiric に入っています。

于 2011-07-31T10:06:41.397 に答える
9

Ars Technica の概要を読むと、いくつかの課題があるようです。

  • GCD は、ブロック (クロージャを近似する C への Apple 拡張) を広範囲に使用します。つまり、コンパイラはブロックをサポートする必要があります。gcc の標準バージョンはブロックをサポートしていないため、Apple の変更を Linux gcc に移植するか、clang/llvm を使用する必要があります。
  • GCD の Mac OS X バージョンには、カーネル内のいくつかのコードが含まれます。明らかに、GCD をサポートするために Linux にカーネルの変更が必要な場合、それは大きな作業です。ただし、ユーザー空間のみのポートは可能のようです。
  • GCD は、Apache ライセンスの下でライセンスされています。どうやら、このライセンスは GPL v2 と互換性がありません。したがって、GPL v2 で配布されているアプリでは GCD を使用できません。ただし、GPL v3 は問題ないので、GPL v2 "以降" でライセンスされたアプリは問題ありません。

そうは言っても、FreeBSD への移植は完了しているので、可能であるに違いありません。

于 2010-07-02T12:59:58.257 に答える