mirror of
https://github.com/processing/processing4.git
synced 2026-02-06 07:09:18 +01:00
314 lines
9.5 KiB
Plaintext
Executable File
314 lines
9.5 KiB
Plaintext
Executable File
HOW TO BUILD PROCESSING
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
BUILDING THE WINDOWS OR LINUX VERSIONS
|
|
|
|
|
|
//// Steps for First Time Setup
|
|
|
|
|
|
1. INSTALL CYGWIN (windows users only). it's downloadable from
|
|
www.cygwin.com or specifically: www.cygwin.com/setup.exe
|
|
linux users can hop ahead to step 2.
|
|
|
|
** of the packages, begin with the defaults, and add:
|
|
cvs - used for version control
|
|
gzip - probably installed by default, just make sure
|
|
perl - use this version, activestate or other distros have trouble
|
|
tar, unzip, zip - for created archives
|
|
textutils - i think this is included in the defaults, but make sure
|
|
|
|
** these aren't required initially, but useful:
|
|
openssh (command line ssh client)
|
|
nano (handy/simple text editor)
|
|
|
|
** and be sure to select the option for 'unix line endings'.
|
|
|
|
** other notes
|
|
|
|
the installer is sometimes a little flakey, so it may take more than
|
|
one try to get everything in there. you can also run the installer
|
|
again to add new applications, so you might try just installing the
|
|
base stuff, and then come back to install the other bits.
|
|
|
|
it's also useful to run the installer (grab a new one from the site,
|
|
since it changes) every few months to keep things fresh.
|
|
|
|
|
|
2. GRAB THE CODE FROM SOURCEFORGE
|
|
|
|
* this grabs the code as an anonymous user. if you have a sourceforge
|
|
account, you should know how to grab the code as yourself.
|
|
|
|
# first do this
|
|
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing login
|
|
# just hit enter when it asks for a password
|
|
|
|
# then do this (may take a while)
|
|
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing co processing
|
|
# (maybe even a long while for you dialup and international folks)
|
|
|
|
# gonna do a few things in the p5 folder
|
|
cd processing
|
|
|
|
# if you're not doing web development, you won't need those folders
|
|
rm -rf web web_gen
|
|
|
|
# this is actually done by the build script, but you may as well do it now
|
|
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing co bagel
|
|
|
|
# a quick cleanup, removes empty (dead/old) folders
|
|
cvs update -P
|
|
|
|
# get back to the processing/ folder
|
|
cd ..
|
|
|
|
|
|
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/
|
|
|
|
* 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
|
|
|
|
# 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
|
|
cvs -z3 update
|
|
# -z3 means make it snappy (using compression)
|
|
|
|
|
|
5b. Or if new folders have been added, use:
|
|
|
|
cd /path/to/processing
|
|
cvs -z3 update -d -P
|
|
# -d grabs new directories and -P cleans out old (empty) ones
|
|
# cvs is a little brain dead about this stuff
|
|
|
|
# if you've removed web/ and web_dev/, then do the update -d -P
|
|
# from inside app/ and bagel/ (rather than from the just the
|
|
# processing/ folder) otherwise -d will grab web and web_dev again
|
|
|
|
# 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.
|
|
|
|
|
|
5c. If there have been significant changes, or you get weird build
|
|
errors, try deleting (or renaming, if you need sketches from
|
|
inside) your 'work' folder. This will create a fresh build.
|
|
This includes any changes to the reference, the examples, the
|
|
bagel serial libraries, jikes, or just about any time you
|
|
have to use -d -P with the update.
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
HOW TO BUILD PROCESSING FOR THE MAC PLATFORM
|
|
|
|
|
|
// if you have any corrections/additions/suggestions:
|
|
// send email to tmohn@sbcglobal.net
|
|
|
|
// note: the macos9 instructions are a little crusty since things
|
|
// have changed since we suspended support for macos9.
|
|
|
|
|
|
|
|
1. GRAB THE CODE FROM SOURCEFORGE
|
|
|
|
// this grabs the code as an anonymous user. if you have a sourceforge
|
|
// account, you should know how to grab the code as yourself.
|
|
|
|
// first do this
|
|
|
|
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing login
|
|
|
|
// just hit enter when it asks for a password
|
|
// then do this (may take a while)
|
|
|
|
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing co processing
|
|
|
|
// (maybe even a long while for you dialup and international folks)
|
|
|
|
// PERFORM MAINT ON FOLDERS FROM SOURCEFORGE
|
|
// gonna do a few things in the p5 folder
|
|
|
|
cd processing
|
|
|
|
// if you're not doing web development, you won't need those folders
|
|
|
|
rm -rf web web_gen
|
|
|
|
// this is actually done by the build script, but you may as well
|
|
// do it now
|
|
|
|
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing co bagel
|
|
|
|
// a quick cleanup, removes empty (dead/old) folders
|
|
|
|
cvs update -P
|
|
|
|
// get back to the processing/ folder
|
|
|
|
cd ..
|
|
|
|
|
|
|
|
2. BUILD IT
|
|
|
|
// first lets get bagel (the make.sh script does this as well if you're
|
|
// feeling lazy).
|
|
|
|
cd [processing folder]
|
|
|
|
// grab off of sourceforge (should be logged in anon still)
|
|
|
|
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/processing co bagel
|
|
|
|
// now we need to unmacbinarize the proce55ing.bin file in the dist
|
|
// folder. we are currently using MacBinary II+ 1.0.2 (stuffit
|
|
// expander doesn't seem to work properly). you can just install
|
|
// the app under OS X and drag/drop-- but you need OS 9 installed
|
|
// on your box to do this (newer machines may not allow this now,
|
|
// thanks to stevie's great ideas). this should drop the Proce55ing
|
|
// application unpacked into the dist folder.
|
|
|
|
// set permissions so you can execute the make.sh file. not sure why
|
|
// these permissions aren't set like the macosx build?
|
|
|
|
chmod +x make.sh
|
|
|
|
// now to build for the first time:
|
|
|
|
cd /path/to/processing/build/[mac os desc]
|
|
|
|
./make.sh
|
|
|
|
// any errors that might happen are obvious here.
|
|
|
|
// to create the distributable:
|
|
|
|
./dist.sh
|
|
|
|
// if everything went well, you'll have no errors. this will
|
|
// drop a folder in your build directory named processing-0000-macosx/9
|
|
|
|
///// (need more doc here on common problems..)
|
|
|
|
|
|
4. PACKAGE THINGS UP
|
|
|
|
//// MAC OS X
|
|
|
|
// make a copy of the new folder just built. this folder lives here:
|
|
// /build/processing-0000-macosx
|
|
// this copy is what you will use to clean things up and package.
|
|
|
|
// do some house cleaning! poke through the structure making sure no
|
|
// CVS folders are hanging around, etc. command line works best
|
|
// for this.
|
|
|
|
// to keep things simple and clean, create a folder called
|
|
// processing-00##.
|
|
// within this folder create two separate folders: (drag the folder
|
|
// above to Applications) and Processing 00##. open the parent folder
|
|
// and clean things up (ie lineup folders etc.). now just drop the
|
|
// parent folder into your disk utility app in os x (applications/
|
|
// utilities) to create the dmg that will be uploaded to the site.
|
|
|
|
|
|
//// MAC OS 9
|
|
|
|
// NOTE: make sure you setup stuffit to compress as .hqx files not
|
|
// .sit. also make sure that you zip up the folder under mac os 9
|
|
// for max compatibility.
|
|
|
|
// make a copy of the new folder just built. this folder lives here:
|
|
// /build/processing-0000-macos9
|
|
// this copy is what you will use to clean things up and package.
|
|
|
|
// do some house cleaning! poke through the structure making sure
|
|
// no CVS folders are hanging around, etc. pay close attention for
|
|
// the .DS_Store files in any folders. command line works best
|
|
// for this.
|
|
|
|
// now just copy this clean folder to the folder that houses
|
|
// your os 9.2 desktop.
|
|
|
|
// in order to finish packaging the os 9 build, you must reboot
|
|
// into os 9.2. once there we need to do some minor house cleaning
|
|
// in this folder (ie make sure no .DS_Store files are hanging
|
|
// around again, etc.)
|
|
|
|
// to keep things simple, just rename the folder to processing-00##.
|
|
// where ## is the revision number. then zip it up with stuffit.
|
|
|
|
|
|
5. UPDATING TO THE LATEST VERSION
|
|
|
|
// Each time you want to update to latest version from cvs:
|
|
|
|
# -z3 means make it snappy (using compression)
|
|
cd /path/to/processing
|
|
cvs -z3 update
|
|
|
|
// Or if new folders have been added, use:
|
|
|
|
# -d grabs new directories and -P cleans out old (empty) ones
|
|
# cvs is a little brain dead about this stuff
|
|
|
|
cd /path/to/processing
|
|
cvs -z3 update -d -P
|
|
|
|
# if you've removed web/ and web_dev/, then do the update -d -P
|
|
# from inside app/ and bagel/ (rather than from the just the
|
|
# processing/ folder) otherwise -d will grab web and web_dev again
|
|
|
|
# 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.
|
|
|
|
If there have been significant changes, or you get weird build
|
|
errors, try deleting (or renaming, if you need sketches from
|
|
inside) your 'work' folder. This will create a fresh build.
|
|
This includes any changes to the reference, the examples, the
|
|
bagel serial libraries, jikes, or just about any time you
|
|
have to use -d -P with the update.
|