Я установил clang, чтобы сравнить его использование с g ++ (gcc) для некоторых программ на C++; как в, я сравнивал время компиляции, обратную связь с ошибкой и т. д. для тех же программ. Я сделал это в основном для официального учебника LLVM (реализация компилятора с использованием LLVM).Clang, LLVM и g ++
В какой-то момент мне нужно было установить библиотеки LLVM (v. 2.9.), А до того, как я только скачал clang. Вследствие этого компиляция с clang ++, похоже, не работает для следующего кода учебника; в то время как g ++ работает с директивами LLVM (например, 'llvm-config -libs` и т. д.). Одновременно с установкой библиотек мне пришлось также перейти от старого учебника, который я читал (llvm 2.2., Предлагая синтаксис clang ++), к одному для 3.0. (предполагая синтаксис g ++), поскольку изменения в библиотеке были изменены.
Мои вопросы объяснить изменения после загрузки LLVM LIBS:
(1) Когда я теперь типа «г ++», я до сих пор на самом деле работает с НКУ, или имеет LLVM/лязг установить себя в качестве новый по умолчанию имитирует синтаксис gcc? Если да, то как я могу убедиться, что я действительно использую gcc, а не clang, когда захочу?
(2) Если g ++ все еще является gcc, любые мнения/предположения, почему официальное руководство clang/llvm переключается с предложения о том, чтобы использовать свой собственный конкурирующий компилятор обратно в gcc? (С, например, here.)
Моя система:
Ubuntu 12,04.
llvm 2.9.
gcc 4.6.3.
clang 3.0.
Можете ли вы попробовать запустить команды 'which g ++' и 'g ++ --version' –
Насколько я знаю, clang ничего не делает с существующими исполняемыми файлами gcc. В учебном пособии LLVM вы можете использовать любой компилятор C++, поэтому я предполагаю, что они переключились на gcc, потому что ваш средний человек с большей вероятностью имеет gcc, чем они должны иметь clang. –
@vonbrand: Я набрал 'llvm' в менеджере программного обеспечения. Появились библиотеки разработчиков, которые я установил. Где я могу это организовать, я предпочитаю интегрировать свои установки в программном mgr. – gnometorule