2014-01-15 1 views
2

Мне нужно написать мои проекты для класса в ISO C++ или C++/CLI, и пока профессор объясняет, как это сделать в Windows, очень сложно узнать, как настроить эквивалент на моем Mac. В настоящее время я запускаю xCode 5.0.2, и, похоже, скомпилировать примеры приложений без проблем с помощью компилятора LLVM 5.0. Я читал, что Apple больше не поддерживает компилятор GCC, так что мой вопрос заключается в эквиваленте двух компиляторов? Будет ли код, который работает в компиляторе GCC, также работать в компиляторе LLVM 5.0?Является ли компилятор LLVM 5.0 эквивалентным компилятору GCC?

+0

Различные компиляторы могут иметь несовместимые языковые расширения, но если вы придерживаетесь стандарта, вы не должны беспокоиться об этом. GCC и Clang неплохо соответствуют стандарту. – SirDarius

+0

Чтобы расширить комментарий от SirDarius, Clang также реализует некоторые расширения GCC, возможно, даже достаточно, чтобы скомпилировать исходный код ядра Linux (который использует довольно много расширений GCC)? Фактически, компилятор Intel C сознательно реализовал многие расширения GCC, чтобы иметь возможность компилировать ядро ​​Linux. –

ответ

6

Нет LLVM 5.0. Проект LLVM в настоящее время находится в версии 3.4. Вариант Apple LLVM/Clang, поставляемый с XCode 5, может содержать номер версии, соответствующий версии XCode, но это слегка вводит в заблуждение.

Это говорит о том, что большинство материалов, которые работают с GCC 4.2 (последний, который отправил Apple), будут отлично работать с LLVM/Clang.

C++/CLI, с другой стороны, является фирменной вещью Microsoft, и вы не сможете использовать ее на Mac независимо от того, что и ни GCC, ни Clang не поддерживают ее.

+0

отлично, спасибо! –

0

Будет ли код, который работает в компиляторе GCC, также работать в компиляторе LLVM 5.0 ?

Если «run» вы имеете в виду «компилирует», тогда да, если ваш код соответствует стандарту.

Погода, а не ваш код Стандартно-complyiant зависит, частично, от того, насколько хорошо ваш профессор выполняет свою работу.

0

В основном. Совместимость с GCC является одной из основных целей Clang (см. http://clang.llvm.org/features.html#gcccompat). Тем не менее, вы можете установить gcc через MacPorts, http://www.macports.org/, если вам это действительно нужно.

+0

спасибо за подсказку с MacPorts! –

Смежные вопросы