Clang разработан как внешний компилятор, который может заменить GCC. … GCC всегда хорошо зарекомендовал себя в качестве стандартного компилятора в сообществе с открытым исходным кодом. Однако у Apple Inc. свои требования к инструментам компиляции.
Являются ли GCC и Clang совместимыми?
Да, для кода C Clang и GCC совместимы (на самом деле они оба используют GNU Toolchain для компоновки). Вам просто нужно убедиться, что вы сообщаете clang создавать скомпилированные объекты, а не промежуточные объекты битового кода.
В чем разница между Clang и GCC?
GCC - это зрелый компилятор с поддержкой многих языков. Как видно из названия, Clang поддерживает в основном C, C++ и Objective-C. Но платформа, лежащая в основе Clang, называемая LLVM, достаточно расширяема, чтобы поддерживать новые языки, такие как Julia и Swift.
Нужен ли Clang GCC?
Вам не нужен GCC для использования Clang, как это можно показать на примере FreeBSD (они полностью заменили GCC на Clang/LLVM и не устанавливают GCC в база больше по причинам лицензирования). Помимо GCC существует множество различных компиляторов C, просто GCC является наиболее распространенным.
Является ли Clang медленнее, чем GCC?
В то время как компилятор LLVM Clang C/C++ традиционно известен своей более высокой скоростью сборки, чем GCC, в последних выпусках GCC скорость сборки улучшилась, а в некоторых областях LLVM/Clang замедлиласьс дополнительными проходами по оптимизации и другими добавленными работамив свою растущую кодовую базу.