llvm-link
リンカーとしてGNUの代わりにLLVMリンカーを使用するようにCMakeに指示する最良の方法は何ld
ですか?でプロジェクトを構成する場合
CXX=clang++ cmake <args>
デフォルトのリンカーは変更されておらず、残っているように見えますusr/bin/ld
(Linuxの場合)。
これは、別のツールチェーンファイルを使用せずに可能ですか?
llvm-link
リンカーとしてGNUの代わりにLLVMリンカーを使用するようにCMakeに指示する最良の方法は何ld
ですか?でプロジェクトを構成する場合
CXX=clang++ cmake <args>
デフォルトのリンカーは変更されておらず、残っているように見えますusr/bin/ld
(Linuxの場合)。
これは、別のツールチェーンファイルを使用せずに可能ですか?
これは CMake とは無関係であることが判明しましたclang++
。デフォルトでシステム リンカを使用します。例えば、
echo "#include <atomic>\n int main() { return 0; }" \
| clang++ -x c++ -std=c++11 -stdlib=libc++ -
/usr/bin/ld
アプリケーションをリンクするために使用します。リンカを に変更するにはllvm-link
、最初に LLVM バイト コードを出力してからリンカを呼び出す必要があります。次に例を示します。
echo "#include <atomic>\n int main() { return 0; }" \
| clang++ -x c++ -std=c++11 -stdlib=libc++ -S -emit-llvm -o - - \
| llvm-link -o binary -
これはバイパスし/usr/bin/ld
ます。