-1
我編譯我的程序這樣的鏈接,如何庫鏗鏘和LLVM鏈接
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鏈接
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文件;你可以閱讀更多關於它here。它與ld
沒有任何關係或將目標文件鏈接在一起。
如果你想生成目標代碼和/或可執行文件,看到這些相關的問題:
總之,你應該使用本地工具組裝和鏈接(例如,as
和ld
),儘管目前有一些實驗性的支持來生成目標文件和LLVM中的鏈接。
在任何情況下,Clang本身都可以調用一個平臺鏈接器 - 實際上它是默認的,但當然你可以通過提供-c
來覆蓋它。
您是否嘗試過'clang ++ -o main.ll file1.bc file2.vs -ldl'? – ismail
沒有,這不工作,它說未知的命令行 – pythonic
file2.vs是在我身邊的錯字,但我想你修復它。您應該發佈整個錯誤日誌,因爲鏗能夠鏈接。 – ismail