Начало работы над Fedora 15
Я установил Clang через Yum:
yum install clang
К сожалению, даже простой "Hello World!" не будет компилироваться, потому что он пытается использовать заголовки libstdC++4.6 (который, я думаю, имеет функции C++0x, которые не понимает clang). Я не смог найти пакет libstdC++ 4.5, только для F14, который явно не устанавливался.
Я даже попытался установить двоичные файлы 2.9, а также скомпилировал и установил для себя соединительную линию svn. Ничего из этого не помогло.
Я помню, что у меня была такая же проблема в Ubuntu, но я смог решить ее, установив заголовки libstdC++ 4.5.
Итак, как люди используют Clang на Fedora?
1 ответ
Как вы знаете, в libvdC++4.6 есть ошибка и ошибка в llvm. Я только что скомпилировал llvm с лязгом из ствола, в соответствии с этой инструкцией
Вы должны настроить пути включения, я использовал эту команду для настройки и компиляции на F15 x86_64:
../llvm/configure \
--enable-optimized \
--disable-assertions \
--enable-jit \
--enable-libffi \
--enable-shared \
--with-c-include-dirs=/usr/include:$(find /usr/lib/gcc/*/* \
-maxdepth 0 -type d)/include \
--with-cxx-include-32bit-dir=32 \
--with-cxx-include-root=$(find /usr/include/c++/* -maxdepth 0 -type d) \
--with-cxx-include-arch=x86_64-redhat-linux
make -j3
sudo make install
Чем я смог составить привет мир
#include <iostream>
int main() {
std::cout << "Hello, World!\n";
return 0;
}
с
clang -o hello hello.cpp -lstdc++
$ ./hello
Hello, World!
Эта документация также может представлять интерес.
Я полагаю, что есть альтернатива для использования libC++, но я сам не пробовал.
Двоичные файлы Fedora llvm 2.9 не будут работать из-за некоторых зависимостей mesa от 2.8.
Надеюсь это поможет:)