[En-Nut-Discussion] Off-topic - Building Nut/OS fast...very fast

Harald Kipp harald.kipp at egnite.de
Tue Jul 19 17:21:37 CEST 2011

Hi Thiago,

On 7/19/2011 1:45 PM, Thiago A. Corrêa wrote:
> Probably the problem lies with
> building Nut/OS for each platform.


> Maybe it's obvious, but make -j NUMBER_CORES does speed up the build
> quite a lot. I used that in qnutconf and got build down to half the

Yes, I tried this as well and now the CPU cores are sometimes up to 90%.
Though, I used -j instead of -j8. The latter is still a bit slow. No
idea why.

A minor problem is, that I had to split "make clean all install" into
"make clean", "make all" and "make install".

The big problem is, that failures are much harder to find. If one
process fails, the others are still producing more output. I observed
the same problem with qnutconf. (Btw. sorry for adding the ugly controls
"verbose" and "clear" in the qnutconf main window. I'll fix this next time).

FYI, I'm running nut/tools/packaging/distcheck.lua. It finally produces
a file errors-x.y.z.log, which becomes unreadable with option -j.

> time compared to nutconf. We could also consider tweaking the
> makefiles to support ccache.

I don't know about this, but will try it.

> Harald, are you building for release or build tests? Maybe we could
> consider a buildbot?

Most of the time it is used to check, that everything is still building
fine. Of course the same script finally produces a distributable
package, but that's required seldom.

You mean a build bot that automatically tries to build all targets after
each commit? The ETH Zurich provided this service some time ago, but
stopped after BTnut was no longer actively developed. It often produces
cryptic results, but in general it had been quite useful.

Right now I'm starting the script manually. If it runs through, no
problem. If it detects a problem, then I have a problem. In most cases
more than one fix is required, requiring several runs until everything
is in shape again. Sometimes this takes many hours. A build bot, which
will email a complaint to the committing developer would definitely help.

Does Sourceforge offer this service and if, can anyone recommend it or
are there better alternatives?



More information about the En-Nut-Discussion mailing list