KDE & CMake (was Re: [CMake] the remaining problems with compiling KDE with cmake)

Alexander Neundorf a.neundorf-work at gmx.net
Fri Jun 17 11:16:11 EDT 2005


> Von: "William A. Hoffman" <billlist at nycap.rr.com> 
... 
> make -j can do this.  Also distcc can be used with cmake, also with the 
> Xcode generator it supports this.  So, if the native build system has  
> it, so do we. 
 
Here's a reply which explains "--compile-slots"  a bit more. It seems 
this is out of the scope for cmake. 
 
> No, make -j can't do it. 
> 
> If I launch make -j6 (because I have 3 computers and I think 2  
> processes per computer is better), there is the possibility that make  
> will launch 6 "ld" at the same time -- mainly at the end of the  
> compilation. 
> 
> Linking takes a lot of memory and disk I/O, so I don't want several 
> linkers running at the same time. make can't split that. 
> 
> There are only two ways to fix this: 
> 1) the build tool knows the difference between compiling  
> (distributable) and non-compiling (non-distributable) jobs 
> or 
> 2) the linker implements locking, so that it can't be launched more  
> than once, simultaneously 
> 
> On top of all that, the build tool has to be smart enough to realise  
> that it shouldn't leave all the linking to the end, and instead  
> schedule linking as early as possible. Linking can't be distributed, so 
> if linkers 
> are running and the compilation is done, several machines may be idle. 
 
Alex 
 

-- 
Weitersagen: GMX DSL-Flatrates mit Tempo-Garantie!
Ab 4,99 Euro/Monat: http://www.gmx.net/de/go/dsl


More information about the CMake mailing list