Le readme inclus dans le nouveau Xcode 3.2.1 cette semaine dit ce qui suit:Xcode 3.2.1 GCC CLANG et LLVM démystification
- analyse de code statique est entièrement intégré dans le Xcode IDE via la construction et l'option Analyser dans le menu Générer ou via commande paramètres de construction
- GCC 4.2 est le compilateur par défaut du système pour le 10.6 SDK
- le compilateur en option LLVM est inclus en utilisant deux extrémités avant différent - le compilateur Clang est un analyseur de pointe qui offre considérablement temps de compilation améliorés. Pour une compatibilité maximale, le compilateur GLC LLVM utilise le back-end LLVM avec l'analyseur GCC 4.2.
- Le nouveau compilateur Clang-LLVM 1.0 optionnel utilise l'analyseur frontal Clang beaucoup plus rapide couplé au compilateur back-end LLVM pour les compilations rapides et le code exécutable rapide. De nombreux projets bénéficieront de cette combinaison de compilateurs, bien que GCC 4.2 soit toujours la valeur par défaut du système. Le compilateur Clang-LLVM 1.0 utilisera LLVM-GCC 4.2 lorsqu'il rencontrera du code C++.
Notre société a des projets existants qui sont purs C, Objective-C, et Objective-C++ pour le bureau et l'iphone. Quelqu'un peut-il résumer à un niveau élevé les différences entre LLVM, GCC, CLANG, CLANG-LLVM, WordFoo et. Al. et expliquer ce qu'ils sont et quand nous devrions utiliser chacun et pour quoi? Ce serait bien d'avoir des liens vers des explications plus détaillées, mais je suis vraiment à la recherche d'un aperçu de haut niveau.
Oui, clang affiche même la colonne de l'erreur, pas seulement la ligne. –
Impressionnant Réponse: Quand je * code * dans Xcode et que je reçois un avertissement * jaune *, est-ce clang? Si je reçois une erreur * rouge *, qu'est-ce que c'est? Si j'obtiens une erreur après avoir exécuté i.e. pendant * runtime *, est ce LLVM qui me donne l'erreur? – Honey