It seems that Processing for linux is squarely aimed at 32bit architectures; you will get linking errors (ELF version mismatches) in some libraries for 64bit architectures. Unfortuntely, serial is one of them.
The fix is quite simple: Install the librxtx java library for your linux distribution, and copy the required system files over the processing files (see below).
I’m using Ubuntu 10.10, so the procedure here is:
sudo apt-get install librxtx-java cd <processing_path>/libraries/serial/library # first move away the original files in case we need to revert for any reason # if you have a system wide installation, you may need to do this as root / with sudo mv librxtxSerial.so librxtxSerial.so.orig mv RXTXcomm.jar RXTXcomm.jar.orig # now install the correct libraries cp /usr/lib/jni/librxtxSerial-2.2pre1.so librxtxSerial.so cp /usr/share/java/RXTXcomm-2.2.pre2.jar RXTXcomm.jar
Since the libraries only get loaded when you’re trying to run a sketch, you won’t even need to restart the processing IDE.
Note: similar issues affect OpenGL libraries; Reply #4 in http://processing.org/discourse/yabb2/YaBB.pl?num=1271143981/3 has a little ruby script to fix those. Other libraries may be affected as well.