A little more info - under Linux the makefile in flasher first complained it couldn't find build/obj/* so I simply copied the entire build directory into flasher and then got this. Perhaps I have some environment problems. I'll try to poke around at this some more in Windows with netbeans, I think.
smrl@smrlbench:~/axoloti/firmware/flasher$ make
arm-none-eabi-gcc build/obj/crt0.o build/obj/vectors.o build/obj/chcore.o build/obj/chcore_v7m.o build/obj/nvic.o build/obj/chsys.o build/obj/chdebug.o build/obj/chlists.o build/obj/chvt.o build/obj/chschd.o build/obj/chthreads.o build/obj/chdynamic.o build/obj/chregistry.o build/obj/chsem.o build/obj/chmtx.o build/obj/chcond.o build/obj/chevents.o build/obj/chmsg.o build/obj/chmboxes.o build/obj/chqueues.o build/obj/chmemcore.o build/obj/chheap.o build/obj/chmempools.o build/obj/hal.o build/obj/adc.o build/obj/can.o build/obj/ext.o build/obj/gpt.o build/obj/i2c.o build/obj/icu.o build/obj/mac.o build/obj/mmc_spi.o build/obj/mmcsd.o build/obj/pal.o build/obj/pwm.o build/obj/rtc.o build/obj/sdc.o build/obj/serial.o build/obj/serial_usb.o build/obj/spi.o build/obj/tm.o build/obj/uart.o build/obj/usb.o build/obj/stm32_dma.o build/obj/hal_lld.o build/obj/adc_lld.o build/obj/ext_lld_isr.o build/obj/can_lld.o build/obj/ext_lld.o build/obj/mac_lld.o build/obj/sdc_lld.o build/obj/pal_lld.o build/obj/i2c_lld.o build/obj/usb_lld.o build/obj/rtc_lld.o build/obj/spi_lld.o build/obj/gpt_lld.o build/obj/icu_lld.o build/obj/pwm_lld.o build/obj/serial_lld.o build/obj/uart_lld.o build/obj/board.o build/obj/fatfs_diskio.o build/obj/fatfs_syscall.o build/obj/ff.o build/obj/shell.o build/obj/chprintf.o build/obj/memstreams.o build/obj/glcdfont.o build/obj/axoloti_control.o build/obj/axoloti_board.o build/obj/sdcard.o build/obj/main.o -mcpu=cortex-m4 -O2 -ggdb -fomit-frame-pointer -falign-functions=16 -ffunction-sections -fdata-sections -fno-common -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -nostartfiles -L. -Wl,-Map=build/flasher.map,--cref,--no-warn-mismatch,--library-path=,--script=STM32F407xG.ld,--gc-sections -mno-thumb-interwork -mthumb -o build/flasher.elf
/usr/lib/gcc/arm-none-eabi/4.8/../../../arm-none-eabi/bin/ld: build/flasher.elf section `.sram2' will not fit in region `SRAM'
/usr/lib/gcc/arm-none-eabi/4.8/../../../arm-none-eabi/bin/ld: region `SRAM' overflowed by 3932 bytes
build/obj/chmemcore.o: In function `_core_init':
/home/smrl/axoloti/firmware/../chibios/os/kernel/src/chmemcore.c:71: undefined reference to `__heap_base__'
/home/smrl/axoloti/firmware/../chibios/os/kernel/src/chmemcore.c:71: undefined reference to `__heap_end__'
build/obj/axoloti_control.o: In function `do_axoloti_control':
/home/smrl/axoloti/firmware/axoloti_control.c:41: undefined reference to `Btn_Nav_Or'
/home/smrl/axoloti/firmware/axoloti_control.c:41: undefined reference to `Btn_Nav_And'
/home/smrl/axoloti/firmware/axoloti_control.c:41: undefined reference to `EncBuffer'
build/obj/sdcard.o: In function `SDLoadPatch':
/home/smrl/axoloti/firmware/sdcard.c:195: undefined reference to `StopPatch'
/home/smrl/axoloti/firmware/sdcard.c:209: undefined reference to `StartPatch'
build/obj/main.o: In function `main':
/home/smrl/axoloti/firmware/main.c:77: undefined reference to `InitPatch0'
/home/smrl/axoloti/firmware/main.c:79: undefined reference to `InitPConnection'
/home/smrl/axoloti/firmware/main.c:95: undefined reference to `axoloti_math_init'
/home/smrl/axoloti/firmware/main.c:96: undefined reference to `midi_init'
/home/smrl/axoloti/firmware/main.c:97: undefined reference to `codec_init'
/home/smrl/axoloti/firmware/main.c:102: undefined reference to `ui_init'
/home/smrl/axoloti/firmware/main.c:103: undefined reference to `StartLoadPatchTread'
/home/smrl/axoloti/firmware/main.c:117: undefined reference to `StartPatch'
/home/smrl/axoloti/firmware/main.c:117: undefined reference to `patchStatus'
collect2: error: ld returned 1 exit status
../../chibios/os/ports/GCC/ARMCMx/
rules.mk:207: recipe for target 'build/flasher.elf' failed
make: *** [build/flasher.elf] Error 1