Как использовать Clang для компиляции большого и сложного проекта?

#compilation #clang #llvm

Вопрос:

Clang-полезный инструмент, но я не знаю, как его использовать для удовлетворения своих потребностей.

 The first question is How to use Clang to compile a big and complex project such as FFmpeg? I download the source of FFmpeg but I do not know how to compile the source.

The second question is How to get a LLVM IR file such as .ll file for a specific C file? I use the command: `clang -emit-llvm -S zmbvenc.c -o zzzzzzz1.ll`. But the result is:
 

#include "libavutil/common.h" ^~~~~~~~~~~~~~~~~~~~ 1 error generated.
Мне интересно, как сгенерировать файл LLVM IR .ll для конкретного файла C и игнорировать другие связанные с этим ошибки.

Комментарии:

1. Вы должны иметь возможность создавать FFmpeg с помощью Clang, следуя этим инструкциям: trac.ffmpeg.org/wiki/CompilationGuide Установка переменной среды CC в clang и переменной среды CXX в clang должна выполняться при условии, что FFmpeg можно компилировать с помощью Clang.

Ответ №1:

У меня была та же проблема, и я нашел одно решение, которое нужно было получить .файлы ll для большого проекта (а также компиляция с использованием clang) осуществляется через WLLVM. Единственная проблема заключается в том, что он будет генерировать один .файл ll для всего проекта.