LinuxでGrand Central Dispatchを使用します
-
01-10-2019 - |
質問
Appleがコードを開いているので、これは可能ですか?libdispatch
?)私はこれをどのように利用できるかについて少し混乱しています。これは、どのアプリケーションでも使用できるAPIを備えたライブラリ、またはMac OS Xに組み込まれたOS機能のようなものですか? 「Mac」とiPhone(iOS 4を使用)だけで構築できますか?このライブラリを使用できますか?
ポートを作る必要があると思います gcc
また、Appleが導入した新しいセマンティックと互換性があります。
解決
読んだ 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ポート 行われたので、それは可能である必要があります。
他のヒント
ほぼ1年後ですが、私はです とても幸せに使用します ubuntu nattyについて。適切なパッケージがOneiricで提供されています。
所属していません StackOverflow