I usually use this script to compile static libraries for the iPhone, but TiMidity++ isn't a library and the API's it uses to output sound on OS X aren't available on the iPhone OS.
Here's what I've gotten so far:
- Save
build_for_iphoneos somewhere in your path and +x it
cd to the extractd TiMidity++ folder
build_for_iphoneos simulator
This will fail
- Copy
timidity/newton_tables.c somewhere safe.
make clean
build_for_iphoneos device
- Manually edit
timidity/makefile and remove all references to DAU_DARWIN and darwin_a
- Copy
newton_tables.c back into the timidity subfolder and touch it
make
You should now have a timidity binary that can be used from the shell on a jailbroken device (after signed via ldid of course) and object files you can include in your project.
Note: TiMidity++ is GPL, so you will have to release your application under that license if you use any part of it. Also, this is really messy because TiMidity++ wasn't designed to be used this way, all of the darwin integration is broken on iPhone OS, and automake confuses me.