Как использовать llvm linker? - PullRequest
7 голосов
/ 07 февраля 2012

LLVM предоставляет 2 инструмента: llvm-link и llvm-ld.Я хотел бы знать:

  • как объединить все .o файл в один?

  • как установить soname как с gcc -Wl, -soname, libsomething.so.1?

Я бы хотел сделать это на c ++, но если покажешь мне, как это сделать из командной строки, я найду, как это сделать на c ++.

спасибо

1 Ответ

10 голосов
/ 07 февраля 2012
  • llvm-link - это инструмент для связывания (~ слияния) IR-файлов LLVM в другой IR-файл LLVM.
  • llvm-ld пытается быть совместимым с ld. Обратите внимание, что LLVM в настоящее время не имеет реальных возможностей связывания, поэтому llvm-ld вызывает gcc для выполнения фактических заключительных этапов.

Обратите внимание, что если вы просто хотите использовать функциональность GCC, используйте драйвер clang:

clang -c file.c -fpic
clang -shared file.o -o file.so

Вы также можете передать -Wl флаги clang, как если бы вы сделали для gcc:

clang -shared file.o -Wl,-soname,libfile.so.8 -o file.so
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...