We’re making some changes to how the offline compilation works, ie compiling with OwlProgram.
Compilation is now split into two parts: libs and patch. Patch is where your code goes. Libs is everything else.
All you have to do is run this command once:
make libs
If you don’t do make libs
you will see this error:
arm-none-eabi-gcc: error: Libraries/libowlprg.a: No such file or directory
make libs
compiles all the code that is not patch specific, and places the results in two archive files with .a
suffix in Libraries
. Run this again if you update the project source code, e.g. with a git pull
.
To recompile the libs from scratch you can:
make realclean libs
If you don’t have emscripten installed (for building Javascript patches) then make libs
will fail with:
/bin/sh: 1: emcc: not found
If you are not using the web target (i.e. not producing Javascript output) then this can be safely ignored, as the main archive will have been produced (in Libraries/libowlprg.a
).
Patch compilation works just as before, only it doesn’t build the libs, and make clean
only removes the patch specific code. And it’s faster, especially if you use emscripten.
These changes now speed up online compilation by about 10 seconds.