incubator-ooo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mathias Bauer <Mathias_Ba...@gmx.net>
Subject Re: Fix me: Abnormalities during bootstrap
Date Sat, 10 Sep 2011 14:57:10 GMT
Am 10.09.2011 15:00, schrieb Joost Andrae:

> Hi Mathias,
> 
>>> After starting the build process on my Win7 64bit notebook (dual core
>>> Intel 2.8 Ghz with 8 GB memory) it quite often stopped but rebuilding
>>> went always fine (until now; I'm still compiling binfilter). I thought
>>> it might be useful to implement a watchdog process watching
>>> stderr/stdout that restarts dmake as soon as the build breaks but it
>>> needs to interpret the error thrown.
>>
>> Probably you have been hit by the well-known bug in GNU Make 3.81 that
>> lets it core-dump at times. This needs to be solved, the developers of
>> Libre Office have gained some experience with that.
> 
> GNU Make 3.8.1 is installed on my machine but I thought that dmake is 
> always used instead ?

You really did not recognize our "new build environment" project?
Parts of OOo are built with GNU Make, hopefully somewhere in the future
everything.

>>> Documentation at
>>> http://ooo-wiki.apache.org/wiki/Documentation/Building_Guide/Building_on_Windows
>>> was really helpful despite I had to disable ATL
>>
>> If you used VC Express: IIRC the documentation mentions that this is
>> necessary in that case.
> 
> Yes it is MSVC++ Express 2008 using Cygwin.
> 
> btw. I wonder about the low CPU load during compile job (max. 50%). Is 
> there a way to allow dmake to parallelize compile jobs ?

You can use "build -Pn" or "build -- -Pn" where n is the number of
parallel build jobs you want to use. As a rule of thumb you will get the
best performance with n = 2*number of (virtual) cores that you have.

The first variant "build -Pn" starts n parallel processes of dmake, the
second "build -- -Pn" tells dmake to do n parallel tasks. You also use
"build -Pn -- -Pn" and divide your cores between both options. If you do
a full build, I recommend "build -Pn -- -Pn" with n=square root of
number of your cores (means 2 or 3 for 4 or 8 cores).

This procedure is awkward and doesn't scale well. This was one of the
reasons why we wanted a new build system. If everything was build with
our new GNU Make based build system, the build would scale much better,
nearly linear with the number of available cores.

Regards,
Mathias

Mime
View raw message