有一個教程 - http://llvm.org/docs/GettingStartedVS.html純C做的例子我可以編譯並鏈接它。沒問題,真的。但我需要C++,而不是純粹的C,而這裏的困難開始。如何使用clang ++在LLVM中編譯C++程序?
對於鐺++我用字符串如
"C:\..> clang++ -c hello.cpp -emit-llvm -o hello.bc"
則:
"C:\..> llc -filetype=obj hello.bc"
和
"C:\..> link hello.obj -defaultlib:libcmt -out:hello.exe"
那裏我得到的14個錯誤LNK2001: unresolved external symbol
所以,我需要小號ome提示。我做錯了什麼?
//-----------------
HELLO.CPP:
#include <iostream>
int main()
{
std::cout << "TEST\n" << std::endl;
return 0;
}
//-----------------
操作系統:Windows7的。
UPD:主要問題:如何從.bc獲取.exe? (LLVM,Windows7的)
我的linux機器上我可以運行'clang ++ -c hello.cpp -o hello'。這不適用於Windows? – none
有一種方法來得到.exe,但我需要得到.bc(字節碼LLVM),然後從.bc得到.exe ... – kpdev
您不會發布您正在獲取的鏈接錯誤,但我想它是C++運行時,這篇文章表明你需要mcsvcr80.dll來支持C++,所以我想你需要將它添加到鏈接行中... http://msdn.microsoft.com/en-us/library/abx4dbyh (v = vs80).aspx – combinatorial