Domanda

Questo è possibile, dal momento che Apple ha open source il codice (libdispatch?) Sto po 'confuso su come si può fare uso di questa. E 'questo come una biblioteca con un'API che qualsiasi applicazione può fare uso di, o di una funzione di sistema operativo integrato in Mac OS X? Può applicazione costruita "per" Mac e iPhone (iOS 4) solo fare uso di questa libreria?

I assumere uno deve eseguire una porta per make gcc anche compatibile con la nuova semantica che Apple ha introdotto.

È stato utile?

Soluzione

Dopo aver letto la Ars Technica panoramica , sembra che ci sono diverse sfide

  • GCD fa ampio uso di blocchi (un'estensione ad Apple di C che si avvicina chiusure) il che significa che le vostre esigenze di compilatore a blocchi di supporto. La versione standard di gcc non ha il supporto per i blocchi, quindi potrete sia necessario ai cambiamenti porto di Apple per il GCC Linux o l'uso clang / LLVM.
  • La versione per Mac OS X di GCD comporta un certo codice nel kernel. Chiaramente, se sono necessarie modifiche del kernel di Linux per supportare GCD, che è un pezzo importante di lavoro. Tuttavia, sembra che uno spazio utente solo porto è possibile.
  • GCD è rilasciato sotto la licenza Apache. A quanto pare, questa licenza non è compatibile con GPL v2. Così non si può utilizzare GCD in qualsiasi applicazione distribuita sotto licenza GPL v2. GPL v3 è però OK, quindi un app sotto licenza GPL v2 "o poi" è OK.

Detto questo, il porto FreeBSD è stato fatto, quindi deve essere possibile.

Altri suggerimenti

E 'quasi un anno più tardi, ma io sono usarlo tranquillamente su Ubuntu Natty. pacchetti corretta stanno arrivando in Oneiric.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top