So here’s a new quick update on howl and what I’ve got so far:
- Dockerfile to bootstrap a docker image with all the build-essentials needed to build owl program and firmwaresender and install the arm toolchain in the image
- running a container based on an image built with the Dockerfile will generate the howl helper script that you can use for local compilation with the image.
So basically you can do this:
build a howl container
$ docker build howl-container .
run the container to generate howl helper script somewhere in path
$ docker run howl-container > ~/bin/howl
make it executable
$ chmod +x howl
run it to get some help on config options for patch compilation
$ howl helpconfig
INFO: Checking for built-in command: “helpconfig”
usage: howl --configoption [config setting] [image command line]
usage: howl – [image command line]
By default, sets config parameters and then runs the given command line in a howl container.
Builtin config options:
cpp-patch: set name of cpp patch
pd-patch: set name of pd patch
faust-patch: set name of faust patch
gen-patch: set name of gen patch
For config-option-specific help: howl helpconfig
For command-specific help: howl help
“howl” helper is used to call make in the container. The skeleton architecture works and i can “$ howl bash” into the container and see everything is installed properly.
Next steps:
- Build OwProgram ad FirmwareSender in the container and install the binaries (we could also make versioned binary packages to install directly with the container in future)
- Test crosscompilation/deploy with howl (hoping deploy will also work, no idea how well juce libraries will run in the container, hoping that will go well)
If all goes well you should run it like this
call make cpp patch GainPatch.hpp, deploy .bin and run on OWL
$ howl --cpp-patch Gain run
I am working on this in my free time and only really have one day a week i can properly focus on it, so sorry for the slow progress but within the next 2-3 weeks i should have something worth testing on github.
If you have any further ideas or thoughts on this let me know, I am excited to see this in action.
Cheers all!