2014-01-16 30 views
9

我想建立鏘以下這一點:http://clang.llvm.org/get_started.html大廈鐺,的libstdC++ 4.6與libstdC++ 4.7

在步驟6命令../llvm/configure運行一系列檢查和一個告訴我:

checking whether Clang will select a modern C++ standard library... no 
configure: error: 
We detected a missing feature in the standard C++ library that was known to be 
missing in libstdc++4.6 and implemented in libstdc++4.7. There are numerous 
C++11 problems with 4.6's library, and we don't support GCCs or libstdc++ older 
than 4.7. You will need to update your system and ensure Clang uses the newer 
standard library. 

If this error is incorrect or you need to force things to work, you may pass 
'--disable-compiler-version-checks' to configure to bypass this test. 

我不知道如何解決這個問題,谷歌搜索libstdC++ 4.7沒有產生任何有用的東西或我理解的東西。我如何去替換/升級呢?我在Mac上(10.7.5)

回答

9

我遇到了同樣的問題。構建Clang的最簡單方法是使用libC++而不是libstdC++。如果您沒有libC++,您可以通過安裝XCode 4.2(或更新版本)來獲得它,或者您可以按照以下說明自行構建它:http://libcxx.llvm.org/

安裝libC++之後,可以使用--enable -libcpp = yes標誌與配置命令。

+0

我最終需要自己做,畢竟這工作,謝謝 – asimes

+1

這隻適用於如果你在MacOSX上,因爲目前,libcxx僅適用於MacOSX。在其他Unix/Linux上,我認爲唯一的解決方案是以某種方式安裝libstdC++ 4.7。 – Albert

7

就在本週,LLVM & Clang項目使用libstdC++將最小編譯器版本要求提高到gcc 4.7。您需要安裝或構建一個更新的gcc。

Here's a blog post我今天早些時候寫的關於在Ubuntu 12.04上構建gcc 4.8並使用它編譯trunk LLVM & Clang。希望這可以幫助!

+0

我發現了一個鏈接,將gcc升級到4.7(對於Mac),但不幸的是我仍然收到相同的消息。 http://asiareubenknowles.com/how-to-install-gcc-4-7-on-mac-os-x-1774 – asimes

+0

@asimes:你確定gcc 4.7被安裝在configure腳本可以找到的位置嗎? –

+0

說實話,我不知道如何確定,我發現了一個不同的解決方案,雖然 – asimes

2

我已經在Mac 10.8.5的Xcode 5.0 配置選項--enable-libcpp相同的錯誤解決我的問題 ../llvm/configure --enable-cxx11 --enable-優化--enable-libcpp

0

對我來說,這件事發生是因爲我有我以前從源代碼構建的舊的clang和clang ++(我試圖構建替換的那個)在我的PATH中首先出現。這些都太舊了。刪除這兩個文件,以便構建過程將使用XCode的命令行工具附帶的clang和clang ++,然後重新生成工作正常。