私はこのように私のプログラムをコンパイルしています、
clang++ -O4 -emit-llvm file1.cpp -c -o file1.bc -pthread
clang++ -O4 -emit-llvm file2.cpp -c -o file2.bc -pthread
llvm-link file1.bc file2.bc -o main.ll -S
-ldlでリンクを指定する方法
llvm-link
LLVM IR ファイルを単一の IR ファイルに「リンク」するプログラムです。詳細については、こちらをご覧ください。ld
オブジェクトファイルを一緒にリンクすることとは何の関係もありません。
オブジェクト コードや実行可能ファイルを生成したい場合は、次の関連する質問を参照してください。
つまり、アセンブルとリンクにはネイティブ ツールを使用する必要があります (たとえば、 と )。ただし、現在、オブジェクト ファイルの生成と LLVM でのリンクを実験的にサポートしていますas
。ld
いずれにせよ、Clang 自体はプラットフォーム リンカーを呼び出すことができます。これは実際にはデフォルトですが、もちろん、-c
.