HOW TO BUILD PROCESSING ON YOUR FAVORITE PLATFORM If you have questions about the contents of this document, ask questions at the discourse section of the site: http://processing.org/discourse/yabb_beta/YaBB.cgi?board=os_core_pde //////////////////////////////////////////////////////////////////// //// Steps for First Time Setup 1. INSTALL DEVELOPMENT TOOLS 1a. On Windows, install Cygwin. It's downloadable from www.cygwin.com or specifically: www.cygwin.com/setup.exe ** of the packages, begin with the defaults, and add: + subversion - used for version control + make, gcc-mingw, and g++ - used to build processing.exe (this will also pull in gcc-core) + perl - use this version from cygwin, activestate or other windows perl distributions have trouble + unzip, zip - for dealing with archives + included in the defaults, but make sure: coreutils, gzip, tar + not required but useful: openssh - command line ssh client nano - handy/simple text editor (gnu pico ripoff) ** and be sure to leave the option selected for 'unix line endings' the cygwin installer is sometimes a little flakey, so it may take more than one try to get everything in there. in fact, it's often best to run the installer once, and let it install all its defaults, then run it again, and select the items above. it's also useful to run the installer every few months to keep things fresh. 1b. On Mac OS X, install Apple's Developer Tools. Should work with everything from the December 2002 Tools for Jaguar on OS X 10.2, up through the more recent Xcode stuff. You'll also need subversion: http://subversion.tigris.org/ Which can be downloaded through Fink, or as a package from: http://metissian.com/projects/macosx/subversion/ 1c. On Linux, you're pretty much on your own.. You need a pretty standard development setup along with Subversion. 2. GRAB THE CODE FROM DEV.PROCESSING.ORG As of August 12, 2005, we're no longer using CVS and have moved on to the brave new world of Subversion. This is scary but hopefully will alleviate some of the CVS annoyances. To get the code, type this from a prompt: svn co svn://processing.org/trunk/processing That part may take a while, especially for people outside the US or who have a slow internet connection. 3. INSTALL QUICKTIME FOR JAVA (Windows users only) * you'll also need to install quicktime for java. grab a quicktime installer from: http://www.apple.com/quicktime/download/ don't try to be sly & use the itunes installer. we all love itunes but it doesn't include quicktime for java by default. or if you were sly, you might need to read the point below about using the updater: * if you already have quicktime installed, just make sure that quicktime for java has already been installed, use the quicktime updater (Program Files -> QuickTime -> QuickTime Updater) hit the 'Details' button in the updater, and if it lists "Not installed" for "QuickTime for Java", well, take care of that. 4. BUILD IT # now to build for the first time: cd /path/to/processing/build/windows # or if you're on linux cd /path/to/processing/build/linux # for the followers of goatee man cd /path/to/processing/build/macosx # and then.. ./make.sh # if everything went well, you'll have no errors. (feel free to make # suggestions for things to include here for common problems) # then to run it ./run.sh # each time you make a change, use make to build the thing # and run to get it up and running. //////////////////////////////////////////////////////////////////// //// Updating to the Latest Version 5a. Each time you want to update to latest version from cvs: cd /path/to/processing svn update 5b. If you're getting strange errors when you try to build, especially if new folders have been added to the Processing repository, remove your 'work' folder and rebuild. # get to the processing folder cd /path/to/processing # remove the work directory cd build/yourplatform rm -rf work # and try again ./make.sh Unfortunately there isn't a way to know (?) if new folders have since been added. but if you're getting "class not found" errors while building, then that's a good indicator that something is missing from a subfolder. //////////////////////////////////////////////////////////////////// //// Frequently Asked Questions - What about eclipse? What about ant? Command line sucks. The command line stuff isn't as scary as it might initially seem. Hopefully it's just a matter of following the instructions above (and being patient). If not, let us know (via the discourse board) where you have trouble so we can fix things. Conceivably, it wouldn't take much to make Processing build under Eclipse or any other IDE, but we don't do it by default. Same goes for ANT. We don't use it, but if someone were to make build scripts that emulated everything that the current build scripts do (not just build the code, but all the other annoying crap that the build scripts do) then maybe we could switch to it. It's all about reaching some kind of critical mass. Some progress has been made by John Houck to get the scripts working under ANT, progress can be tracked here: http://dev.processing.org/bugs/show_bug.cgi?id=151 //////////////////////////////////////////////////////////////////// Ben Fry - Updated 13 September 2005