← Back to team overview

kicad-developers team mailing list archive

Re: Parallel build errors on Windows using mingw32-make


> To cause the problem I can simply delete pcbnew/specctra_lexer.h and start start a build
> with -j6.
> Best Regards, Brian.

Again, my theory is that >= 2 threads are going after the same make file target
concurrently, that target was in the make file I mentioned earlier, and the actual line in
the make file which is being executed more than once is the one below:

    cd /svn/kicad/testing.checkout/build/pcbnew && /usr/bin/cmake -Denum=DSN
-DoutCppFile=/svn/kicad/testing.checkout/pcbnew/specctra_keywords.cpp -P

Just above this line are a handful of print commands, in fancy colors.

To verify my theory Brian, can you get a complete successful build using a single thread,
then delete the spectra_lexer.h file.  Then run with -j6, but redirect the output to try
and capture a duplication of the other commands associated with this target, namely the
duplication of print statements.  You might see two or more of each one.

Something like:

$ make -j6 > capture.txt

This will capture stdout and let the stderr stream still go to console.  We want the cmake
print statements, and I think they are stdout.

If you see duplication of print statements, then the assignment of threads to target is in
fact the problem.

Then I would try hand editing the make file, combine the two target lines into one,
remember to use tabs.

Follow ups