If you update your board AND local copy of Bela to the dev branch, you should now be able to compile Heavy projects much quicker. A new feature of the Heavy server provides pre-built object files for Bela alongside the source files. So basically, only linking is done on the board.

This gives a huge performance improvement when first building a project (e.g.: 7 seconds vs over 1 minute), but still gives a good advantage when performing repeated builds after changing your Pd patch and recompiling, e.g.: 7 seconds vs 20 seconds for the "techno-world" project.

This is the new default behaviour. You can invoke the old behaviour (download source files, compile them all on the board) by passing the --src-only command line option to the build_pd_heavy.sh script.

Three small downsides of this new approach:
- uses more bandwidth (e.g.: 160KB vs 100KB)
- uses gcc 4.8.4
- currently, if you switch from using the pre-compiled version to using --src-only, you have to manually re-trigger the build of Heavy_bela.o and HeavyContext.o, otherwise if only the former gets recompiled (which is not uncommon, given that it is the only file which changes at every build), you would then get a weird linker error (e.g.: /root/Bela/projects/hello-world/build/Heavy_bela.o:(.rodata+0x178): undefined reference to 'typeinfo for HeavyContext'. If anyone has any good idea as to why this happens, please pitch in

giuliomoro changed the title to Faster heavy builds .
a year later

The above is not a bug report, it is a short tutorial. Are you still having problems?

6 days later