Линкер для Clang?
Какой компоновщик я использую для Clang? Если я использую clang или ld в качестве компоновщика, я получаю огромное количество ошибок, как если бы я не связывался со стандартной библиотекой.
g++ $ (OBJS) -o $ (BINDIR) / obtap
Кажется, я должен использовать g++, чтобы связать свои объекты clang.
3 ответа
Я использовал "clang" вместо "clang++", то есть он не связывал стандартную библиотеку C++.
Продолжение: сейчас 2016, и llvm добилась определенного прогресса в создании собственного компоновщика. Это называется "lld", и сайт здесь. Он отлично работает для создания двоичных файлов i386 и x86_64, в то время как работа над другими системами продолжается.
Это должно устранить зависимость от инструментов GNU для BSD, если она считается достаточно стабильной.
Вам не нужно использовать редактор ссылок llvm. Я не буду вдаваться в технические подробности, но, вкратце, вам понадобится типичный редактор ссылок UNIX, доступный для использования Clang в настоящее время (читай: GNU ld или Sun ld). Даже llvm-ld использует компоновщик базовой платформы для связи собственных двоичных файлов.