2013-02-06 72 views
4

您好我一直在使用CC = gcc-4和CXX = g ++ - 4標誌編譯我的cygwin env上的llvm和clang,因爲gcc 3.4.x似乎根本不能編譯llvm clang。但我的問題是關於編譯時間長的問題。我一直在晚上8點,現在是凌晨1點35分編譯。我的編譯目錄的大小也超過了8千兆字節。但我仍然看到clang llvm在cygwin上很長的compliation時間

llvm[5]: Linking Debug+Asserts executable clang-format 

這是正常的嗎?我能以某種方式讓這個更快嗎?

+0

cygwin在這個東西上通常很慢。 –

+0

內存大小很重要。在Linux下,當我擁有3GB內存時,我發現了很多分頁。我把它提升到了8GB,加速了很多。 –

回答

0

我懷疑這是因爲Cygwin。你應該可以用MS Visual Studio來構建它們,有些則可以用Mingw來完成。

+0

好吧,如果它計數,我也已經在cygwin上完成了它,相當痛苦,總編譯時間爲一些奇怪的8小時,並且構建大小爲11千兆字節。哦,我在編譯結束時得到了這個msg **注意:調試版本比優化版本慢10倍**讓我再次嘗試優化版本並重新開始。 :) – FUD

5

這裏有一些統計

編譯器:GCC 4.5.3 鐺,LLVM:3.2

  • 一個調試+斷言構建了我8小時左右,以建立與總建築 規模超過11千兆字節。

  • 發行版本+斷言僅僅花了1小時,只有構建的800兆字節。

也用於發佈版本(與配置--enable優化)我用使與-j 4。但我非常懷疑編譯時間過長主要是由於構建過程本身警告調試構建。

Note: Debug build can be 10 times slower than an optimized build 
+2

謝謝!這非常有幫助。也可能要添加--enable-targets =(在我的情況下,x86_64)開關,以避免構建PPC,ARM等(它似乎是在我的構建中執行的)。 – BillT

0

你看到的是非常期待的。 LLVM/clang是用C++編寫的。所以,那裏有大量的調試信息。 Linker正在嘗試將所有東西合併在一起。

在Linux上,通常的建議是嘗試黃金而不是ld。這通常會把速度提高10倍。