So I took the advice from @lawrie and @Folknology that helped me get going building for the BlackIce Mx / IceStorm examples and I put this into a Dockerfile which can be used to build a Docker container with (hopefully) all needed build dependencies.
This is archived here:
Building for Docker should be something like
$ docker build -t dynamicdevices/mystorm .
Running a container should be something like this. Note we're mapping the ACM9 device into the container.
$ docker run -t -i --device=/dev/ttyACM0 dynamicdevices/mystorm bash
That''ll get you a prompt inside the container.
Then for an example...
$ cd /usr/src/fpga/IceCore/Examples/blink
$ make upload
That works for me here with a BlackIce MX connected to the physical computer...
Or for SoC examples...
$ cd /usr/src/fpga/SaxonSoc/hardware/synthesis/blackicemx
$ cp makefile.sdram makefile
$ make generate
$ make prog
That works for me here too with a BlackIce MX connected to the physical computer...
Hopefully this helps people to have a "known good" environment to work within without too much faffing.
You can look at the individual steps in the Dockerfile here:
I'm in the middle of pushing my prebuilt image up to the Docker Hub so you can do a Docker pull on it.
It'll probably and up as dynamicdevices/mystorm somewhere in here
Hope this is of use.