Search processing.org:

###

Supported Platforms
Windows
Mac OS X
Linux
Other Platforms
Java Versions

##### Supported Platforms

The Processing Development Environment (PDE) is currently tested on:

1. Mac OS X 10.5 (Intel only, no PowerPC)
2. Mac OS X 10.6
3. Windows XP (latest service pack only)
4. Windows 7 (32-bit, limited testing on 64-bit)
5. Ubuntu Linux 9.04 (on i686 and x86_64)

These are the operating systems that are on machines at the Processing Release Testing And Quality Assurance Center (the PRTAQAC, which bears a suspicious resemblance to Ben's apartment). Builds usually get the most testing on OS X 10.4. If you run into trouble, you've gotta let us know, the PRTAQAC is badly understaffed.

##### Windows

Windows, and to a lesser extent, Linux, are by far the superior platform for running Java applications. It's not because we like Windows (we don't) but that's just how it is.
We are not supporting or testing with Windows Vista. We're going straight from Windows XP to Windows 7.
Until further notice, using 64-bit Windows is strongly discouraged. Bugs with 64-bit versions of Windows will have an extremely low priority.
The release is split into versions with and without Java. The non-Java version is only recommended for people who know what they're doing and have JDK 1.5 installed. If you have trouble getting Processing to run properly, one of the first things you should try is downloading the version that includes Java, rather than the one without.
If Processing does not start, try running it from a command prompt with the following:

    .\processing.exe --l4j-debug

This will create a launch4j.log file which will describe what's happening during the startup. Then you can post on the discourse section of the site to inquire for help, or the bugs database if you think it's a bug.
It's not possible to use Processing with Windows 98, ME, or 2000. Recent Server editions are not supported, though they should work. 64-bit versions of Vista or XP will likely work but we don't have resources to test and debug for them.

##### Mac OS X

Java on Mac OS X has always dragged behind other platforms. Unfortunately Apple management seems to have a completely arrogant attitude about Java and wants developers to build their applications using Cocoa, seemingly unaware of their current marketshare. For best performance, use Processing with Windows.

- If you're having trouble with Mac OS X, check the console. It's found in Applications → Utilities → Console.app. Information posted there may tell you what the problem is, or provide an error message that someone (perhaps from the discourse section of the Processing site) can help with.
- Processing requires OS X 10.5 or later. It may run on 10.4, but we won't be fixing bugs with OS X 10.4, because we only have so much free time.
- Processing is no longer supported PowerPC machines. I've sold my PowerPC Mac, and you should too.
- When using OS X, it's common to get errors in the console that read something like:
  `2006-03-30 15:27:47.118 java[1170] CFLog (0): CFMessagePort: bootstrap_register(): failed 1103 (0x44f), port = 0x11303, name = 'java.ServiceProvider'
  See /usr/include/servers/bootstrap_defs.h for the error codes.
  2006-03-30 15:27:47.119 java[1170] CFLog (99): CFMessagePortCreateLocal(): failed to name Mach port (java.ServiceProvider)`
  This is an Apple bug that shows up any time that more than one instance of Java is running. It's bizarre that they haven't fixed this issue.
- The ever-popular Sonia library needs an update for the new version of jSyn that is a Universal Binary. This can be found on the jSyn site. The default Sonia download includes the PowerPC-only version of jSyn.

More information about Java on OS X can be found at Apple's Java FAQ.

##### Linux

On Linux, the Processing application is just a shell script. If you set up a launcher (e.g. in Ubuntu), be sure to set the working directory to the folder that contains the shell script. It's not smart enough to find its own path. (If you can write a version that's smarter, please let us know).
Most problems on Linux come from the version of Java that's included in the download being incompatible with the OS. Replacing (or making a symlink to) the contents of the ‘java’ folder will let you tie in a preferred Java VM for your machine. This must be a symlink to a full JDK, not a JRE. Be sure that the symlink is set up relative to the ‘processing’ shell script such that ./java/bin/java points to the ‘java’ binary.
Note that the GNU Classpath, GCJ, GIJ combination will not work with Processing. You'll need a regular Java release downloaded from Sun. OpenJDK and IcedTea are also unlikely to work, however we'll update this as those projects progress.
If you get Processing to run properly, the Sketch → Show Sketch Folder command may not be available. Processing will attempt to find kde-open and gnome-open, and if neither is available, the menu item will be dimmed. To fix this, you must set a launcher for your platform. Add a line to ~/.processing/preferences.txt that specifies its location:
`launcher.linux = /path/to/launcher_app`

##### Other Platforms

Because Processing is written in Java, it should run on any platform that supports Java 1.5. If you'd like to get it running on BSD, Irix, AmigaOS, BeOS... whatever, do the following:

1. Download the Linux version, and replace the “java” folder and jikes application with versions that support your platform. The files can by symbolic links to your Java Runtime installation (note how the folder hierarchy works to make sure you're linking the right thing) or Jikes executable.
2. Next, mess with the shell script if necessary to get things up and running.
3. If you have success, share the details for others.

##### Java Versions

There are several versions of Java, each with a different story. The versions from 1.2 to 1.4 are also referred to with names like "Java 2 SDK 1.2" or "J2SE 1.4" (Java 2 Standard Edition 1.4). J2SE is different from the trimmed-down J2ME ("Micro Edition") which runs on mobile devices, and J2EE ("Enterprise Edition") which contains more "enterprise" related bloat. In a moment of further anti-user marketing genius, Sun decided to call the next release "Java 5.0" when promoting, but it's Java 1.5 to developers. Proving that they could outdo themselves in idiocy, the release that followed is called JDK 6.

- Java 1.5 is required to run the Processing Development Environment and projects created with Processing.
- It is not yet possible to use any of the new syntax introduced in Java 1.5 within Processing, even if you have 1.5 installed (the preprocessor and compiler used by Processing don't understand the 1.5 syntax). This includes the enhanced "for" loop, templates, generics, enums, varargs, and lots of other crap that Sun added because they felt that the older syntax was too simple and usable. A couple of these features are very useful (the for loop, some aspects of generics) so if you would like to help get things running with 1.5 syntax, please help us fix things. More information cane be found here.
- We will not be moving to Java 1.6 anytime soon because of Apple's lack of support for Java, and half our users are on Macs. (Releasing Java 1.6 two years later and only for 64-bit Intel machines running OS X 10.5.2 does not count as support). If this bothers you a fraction of as much as it annoys us, please complain to Apple.
- If you get an UnsupportedClassVersionError when using a library or other Java code, that means the code was compiled for a later version of Java than is supported by Processing. Recompile this code with an earlier Java release and you should be all set.