
Qual é a maneira mais fácil de configurar Clang, libc++ e LLVM completos como conjunto de ferramentas global padrão? Todas as minhas tentativas de construí-lo, na maioria das configurações que consegui imaginar, resultaram no funcionamento do Clang, mas ele não usou cabeçalhos libc++, mas sim os libstd++ do GCC padrão, resultando em inúmeras falhas em partes incompatíveis do código da biblioteca.
Eu gostaria que funcionasse imediatamente, sem ter que fazer mágica .bashrc
ou passar tudo isso -stdlib=libc++
e -lc++
para compilador e vinculador.
Responder1
A julgar como o LLVM e o Clang foram integrados à base do FreeBSD, acho que você precisará hackear os componentes internos do Clang para definir caminhos de biblioteca e cabeçalhos ( lib/Frontend/InitHeaderSearch.cpp
) para o seu sistema.
Usar libc++ como padrão definitivamente precisa alterar o código (grep lib/Frontend/CompilerInvocation.cpp
para "UseLibcxx"). Você provavelmente também precisará hackear o vinculador do sistema para mudar -lstdc++
para -lc++
.
Pessoalmente, recomendo que você apenas configure CC, CXX, CFLAGS, CXXFLAGS e outros vars para obter o mesmo resultado sem muitos problemas. Funciona perfeitamente para mim no FreeBSD.