2011-12-22 92 views
7

我想在Linux上構建Clang(亞馬遜的EC2)。我在運行廠名定爲每指南:Error Building Clang

http://clang.llvm.org/get_started.html

我得到以下鏈接錯誤信息:

llvm[2]: Linking Debug+Asserts executable opt 
/home/ec2-user/benchmark/build/tools/opt/Debug+Asserts/opt.o: In function `llvm::ParseIR(llvm::MemoryBuffer*, llvm::SMDiagnostic&, llvm::LLVMContext&)': 
opt.cpp:(.text._ZN4llvm7ParseIREPNS_12MemoryBufferERNS_12SMDiagnosticERNS_11LLVMContextE[llvm::Pars eIR(llvm::MemoryBuffer*, llvm::SMDiagnostic&, llvm::LLVMContext&)]+0x5f): undefined reference to `llvm::ParseBitcodeFile(llvm::MemoryBuffer*, llvm::LLVMContext&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)' 
collect2: ld returned 1 exit status 
make[2]: *** [/home/ec2-user/benchmark/build/Debug+Asserts/bin/opt] Error 1 
make[2]: Leaving directory `/home/ec2-user/benchmark/build/tools/opt' 
make[1]: *** [opt/.makeall] Error 2 
make[1]: Leaving directory `/home/ec2-user/benchmark/build/tools' 
make: *** [all] Error 1 

有誰知道這是什麼意思?

編輯:我重建從SVN整個項目,現在我收到以下錯誤:

COMPILE: clang_linux/asan-i386/i386: /home/ec2-user/benchmark/llvm/projects/compiler-rt/lib/asan/asan_rtl.cc 
/home/ec2-user/benchmark/llvm/projects/compiler-rt/lib/asan/asan_rtl.cc:28:10: fatal error: 'new' file not found 
#include <new> 
     ^
1 error generated. 
make[5]: *** [/home/ec2-user/benchmark/build/tools/clang/runtime/compiler-rt/clang_linux/asan-i386/i386/SubDir.lib__asan/asan_rtl.o] Error 1 
make[5]: Leaving directory `/home/ec2-user/benchmark/llvm/projects/compiler-rt' 
make[4]: *** [BuildRuntimeLibraries] Error 2 
make[4]: Leaving directory `/home/ec2-user/benchmark/build/tools/clang/runtime/compiler-rt' 
make[3]: *** [compiler-rt/.makeall] Error 2 
make[3]: Leaving directory `/home/ec2-user/benchmark/build/tools/clang/runtime' 
make[2]: *** [all] Error 1 
make[2]: Leaving directory `/home/ec2-user/benchmark/build/tools/clang' 
make[1]: *** [clang/.makeall] Error 2 
make[1]: Leaving directory `/home/ec2-user/benchmark/build/tools' 
make: *** [all] Error 1 
+0

你是用自動工具還是用cmake構建的? – 2011-12-23 09:09:15

+0

當我嘗試在Windows上構建時,我按照說明使用cmake,但是這也不起作用。現在我正在Linux上執行此操作,並按照步驟(5)使用configure命令和make進行。我不確定自動工具是什麼? – user265445 2011-12-27 00:00:26

回答

2

我跟着this和我能夠在第一槍自身成功塑造它。

我想,你遇到的問題與C++ standard library headers。所以你需要按照上面提到的鏈接Step #6

開始新建,請確保您滿足this的先決條件。

+0

我開始了,按照步驟#6,我仍然收到我在我的問題中提到的第二個錯誤(我也編輯了問題以添加第二個錯誤消息的完整文本)。關於我可能做錯什麼的其他想法? – user265445 2011-12-26 23:54:37

+0

在步驟7中,我收到以下錯誤消息: CMake 2.8.12.2或更高版本是必需的。您正在運行的版本2.8.12 我試過升級cMake,但系統無法識別。 – Junchen 2015-10-03 20:25:49