-1
我有一個大型項目,需要大約半小時才能編譯。更改包含在大型項目的所有模塊中的頭文件
該項目由許多模塊組成,但有一個包含所有模塊之間共享數據的特定頭文件。
目前,我對這個頭文件進行了重大更改,每次我試圖編譯和運行項目以確保一切正常時,編譯需要大量時間(因爲此頭文件文件包含在所有模塊中)。
有沒有辦法克服這個龐大的編譯時間?
我有一個大型項目,需要大約半小時才能編譯。更改包含在大型項目的所有模塊中的頭文件
該項目由許多模塊組成,但有一個包含所有模塊之間共享數據的特定頭文件。
目前,我對這個頭文件進行了重大更改,每次我試圖編譯和運行項目以確保一切正常時,編譯需要大量時間(因爲此頭文件文件包含在所有模塊中)。
有沒有辦法克服這個龐大的編譯時間?
考慮不要像這樣構建你的項目。
您的文件可能包含一些字符串,整數等。將它們放入一個.c
文件中,並提供讀取它們的函數或在標頭中使用extern int foo;
等。
如果你不能做到這一點:
make -jN
將運行並行make
高達N
工藝(CPU內核數的兩倍似乎運作良好)。distcc
。
謝謝。但是什麼是「distcc」 – 2014-11-23 12:45:33
'distcc'允許'cc'(或'gcc')在局域網或互聯網上的多臺機器上透明地運行。我已經添加了一個鏈接。 – abligh 2014-11-23 12:47:17
不,我試圖分解它,但其內容用於所有模塊:( – 2014-11-23 13:31:07