Вопрос

Это возможно, так как Apple открывает поставленный код (libdispatch?) Я немного запутался, как можно использовать это. Это похоже на библиотеку с API, что любое приложение может использовать, или функция OS, встроенная в Mac OS X? Может ли приложение, построенное «для» MAC и iPhone (с iOS 4), используя эту библиотеку?

Я предполагаю, что нужно запустить порт, чтобы сделать gcc Также совместим с новым семантическим, что Apple представила.

Это было полезно?

Решение

Прочитав ARS Technica Обзор, Похоже, появляется несколько вызовов

  • GCD делает широкое использование блоков (расширение Apple к C, который приближается к закрытиям), что означает, что ваш компилятор должен поддерживать блоки. Стандартная версия GCC не имеет поддержки блоков, поэтому вам придется либо портировать изменения Apple в Linux GCC или использовать Clang / LLVM.
  • Mac OS X версии GCD включает в себя какой-то код в ядре. Очевидно, что для Linux требуется изменения ядра для поддержки GCD, это главная работа. Однако кажется, что возможен только порт пользователя только порта.
  • GCD лицензирован по лицензии Apache. По-видимому, эта лицензия не совместима с GPL V2. Таким образом, вы не можете использовать GCD в любом приложении, распределенном под GPL V2. Хотя GPL V3 в порядке, поэтому приложение, лицензированное под GPL V2 "или позже", в порядке.

Сказал все это, FreeBSD Port. было сделано, поэтому должно быть возможно.

Другие советы

Это почти год спустя, но я используя его довольно счастливо на Ubuntu Natty. Правильные пакеты идут в oneiric.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top