Personal tools
You are here: Home documentation developer BuildingPdForiPhone
Views

Edit history

Edit: -1 of 1
Time: 2014-05-22 15:50:41
Note: /pd/pd/docs/developer/BuildingPdForiPhone/vote

changed:
-
----

Straight Pd-vanilla can run fine on the iPhone and iPod Touch.  You will need a jailbroken OS in order to run it.  Building it is easy:

 * install the full iPhone Xcode
 * check out the pd-mobile-0.43 branch:
 * `svn co https://pure-data.svn.sourceforge.net/svnroot/pure-data/branches/pd-mobile-0.43`
 * `cd 0.43`
 * `./autogen.sh && ./configure --host=arm-apple-darwin10.0.0d3 && make`
 * `scp src/pd mobile@YOUR_IPHONE_IP:/tmp/`

Once you have `scp`'ed your Pd to your iThing, then you can run it via the terminal on your iThing:
 *`ldid -S /tmp/pd`
 *`/tmp/pd -nogui -noaudio -nomidi -open mypatch.pd`

== externals ==

It is also possible to build and load externals.  If you have jailbroken your iThing, then you can use regular externals.  There is a Makefile template available in pure-data svn: http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/ext13/Makefile?view=log

To build for iPhoneOS, run this on a Mac OS X machine: `make CPU=arm`

== running it on the command line ==

Currently, there is no Pd GUI on the iPhone, only for Pd-based apps like iJam and rjdj.  But you can run it from ssh or the Terminal. `-nogui` is essential, the rest of the flags are optional:

{{{
 ./pd -nogui -noaudio -nomidi -open multitouch-test.pd
}}}

== building cyclone ==

{{{
cd pure-data/trunk/externals/miXed/cyclone
make clean
find .. -name \*.o -delete
make \
    CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc \
    CPP=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/cpp \
    CXX=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++ \
    CFLAGS="-I../shared -I/Applications/Pd-extended.app/Contents/Resources/include -fast -funroll-loops -fomit-frame-pointer -miphoneos-version-min=3.0 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk -arch armv6" \
    LFLAGS="-bundle -undefined dynamic_lookup -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk  -arch armv6 -lc"
}}}

= Related Projects =
 *[http://gitorious.org/pdlib/pages/ObjC libpd for iOS]
 *[http://rjdj.me/ rjdj] is based on Pd running on iPhoneOS, but is not fully free software
 *[http://github.com/bryansum/pdlib pdlib] is another Pd port for iPhoneOS related to the iJam app
 *[http://code.google.com/p/ipd/ iPd] is another Pd port for iPhoneOS designed to be an audio engine

Powered by IEM Powered by Plone Section 508 WCAG Valid XHTML Valid CSS Usable in any browser