Whale is an entry for the 2018 Blender 24-hour IRC compo Whales / Doing Astrophysics / Crater Lake It's a collaboration I did with some friends, we've called ourselves "Hungrycat" (productions?) for this silly creation. Note much of this code is forked from an earlier project I worked on but never finished called Maladjusted. No, I did not write all of this in 24 hours, and I had a full night's rest during the competition. Building from source: On GNU/Linux for GNU/Linux: ./bootstrap; mkdir build; cd build; ../configure; make Optionally with svg-cairo instead (like the release windows builds) ./bootstrap; mkdir build; cd build; ../configure --with-svg-cairo; make Note the libsvg and libsvg-cairo releases available from https://www.cairographics.org/snapshots/ appear to be unmaintained stale abandonware at this point. The svg2swf project has been maintaining forks of libsvg and libsvg-cairo and they seem to work much better in terms of rendering correctness with unprepared svg files, you may find them here: git://git.code.sf.net/p/svg2swf/libsvg-cairo git://git.code.sf.net/p/svg2swf/libsvg Note that the svg2swf fork has changed the pkgconfig name to libsvg-cairo-0.6 so if you use that, you'll have to s/libsvg-cairo/libsvg-ciaro-0.6/ in configure.ac and rerun the bootstrap. By default librsvg is used when available, but libsvg-cairo has fewer dependencies making it much easier to cross-compile with for windows. On GNU/Linux for Windows via MinGW-w64 w/static linking: ./bootstrap; mkdir build-win; cd build-win \ LDFLAGS=-static PKG_CONFIG='x86_64-w64-mingw32-pkg-config --static' \ PKG_CONFIG_PATH=/usr/local/cross-tools/x86_64-w64-mingw32/lib/pkgconfig \ ../configure --host=x86_64-w64-mingw32 --with-svg-cairo The above assumed your mingw toolchain prefix is 'x86_64-w64-mingw32', the i686 build was configured using the following commandline: LDFLAGS=-static PKG_CONFIG='i686-w64-mingw32-pkg-config --static' \ PKG_CONFIG_PATH=/usr/local/cross-tools/i686-w64-mingw32/lib/pkgconfig \ ../configure --host=i686-w64-mingw32 --with-svg-cairo On OSX for OSX via brew (requires brew already installed): brew install automake pkg-config librsvg sdl2_mixer ; ./bootstrap mkdir build; cd build; ../configure; make Installing: Don't install this, that's silly, just run it in-tree. I didn't even bother adding the assets to the automake stuff to support installation. Simply add a symlink to the assets directory, and run from the build root: cd build; ln -s ../assets; src/whale Running: Just run without any arguments from a directory containing assets/ On linux SDL is unable to raise the audio thread priority without either root privileges or the specific capability. Don't run it as root, instead run this command on the executable: `sudo setcap 'cap_sys_nice=eip' whale-linux-amd64` - 4/15/2018