Am 25.07.2017 um 12:53 schrieb alvinpenner:
previously, according to the instructions at: https://inkscape.org/en/develop/getting-started/#building-inkscape-windows I would execute the commands: md build cd build cmake -G "MinGW Makefiles" .. mingw32-make -j 2 mingw32-make install
Now it appears that the command 'mingw32-make -j 2' is redundant, and all that is needed is the sequence: md build cd build cmake -G "MinGW Makefiles" .. mingw32-make install
I found this out by accident while trying to compile the 0.92.x branch revision 84f9b04a from July 24 on Windows XP using devlibs and cmake. All the source code got compiled twice using the original set of commands. When I deleted the build directory and removed the redundant make command, it compiled normally. The same appears to be true in trunk as well.
Alvin
Hi Alvin,
the command "mingw32-make -j 2" was always "optional":
* if you run "mingw32-make" it will default to what cmake calls the "ALL" target (which compiles all Inkscape code) * if you run "mingw32-make install" it will execute the "install" target (which installs the compiled code into the inkscape/ directory) * as the "install" target depends on the "ALL" target: If you did not run "mingw32-make" before running "mingw32-make install" the build system will detect this and automatically compile the code for you before executing the "install" target.
Two notes:
* running "mingw32-make" (or "mingw32-make install") any number of times in sequence should *never* compile the code more than once! mingw32-make will output status messages for all compilation stages, but a second run should be significantly faster as most source files are already compiled and the build system will not re-build them. If that's not the case for you, there's something wrong. * always add the "-j2" option to the install target if you did not compile your code previously (i.e. "mingw32-make install -j2") otherwise you'll end up with (slow) single-threaded compilation. (The number should be set to at least the number of your CPU cores for efficient usage of resources)
Regards, Eduard