The following work sequence shows you how to install the tree and network-viewing tool "SplitsTree4" (www.splitstree.org) on your 64bit Ubuntu system. You might have experienced the error-messages listed below. This happens because SplitsTree4 requires 32bit libraries for the Java Runtime Environment (JRE), which are not by default installed on 64bit systems.

I wrote this installation guide in 2007 while using Ubuntu Linux 7.04 (Feisty Fawn).
  1. Start the package manager "Synaptic" and install the package ia32-sun-java6-bin on your system.

  2. Start a text-editor (e.g. gedit) and open the file .bashrc in your home directory (/home/USERNAME/.bashrc). If you can’t find it by default, activate the display of hidden files by pressing Ctrl+H.

  3. Add the following line to end of the file:

    PATH=/usr/lib/jvm/ia32-java-6-sun/bin:${PATH}
  4. Download the Unix executables from the SplitsTree4 website: www.splitstree.org.

  5. Allow the file (e.g. splitstree-unix-4-10.sh) to be executed [right mouse-click on the file → "Properties" → open Tab "Permissions" → select "Allow executing file as program"].

  6. Open a terminal window and move to the folder containing the file.

  7. Start the installation by typing:

    ./splitstree-unix-4-10.sh
  8. After the successful installation you can start SplitsTree4 by opening a terminal and start the program SplitsTree (e.g. by typing the following command into your terminal - of course you have to use the destination folder you specified during the installation. Here it is: /home/USERNAME/bin/splitstree4/)

    /home/USERNAME/bin/splitstree4/SplitsTree

Error messages

After starting the setup in the terminal (here from the folder /home/USERNAME/Desktop/splitstree/):

Starting Installer ...
Could not display the GUI. This application needs access to an X Server.
If you have access there is probably an X library missing.
*******************************************************************
You can also run this application in console mode without
access to an X server by passing the argument -c
*******************************************************************
An error occurred:
java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/motif21/libmawt.so
Error log: /tmp/install4jError6227062450943602627.log

Content of error log (here /tmp/install4jError6227062450943602627.log):

Exception:

java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/motif21/libmawt.so
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1666)
at java.lang.Runtime.load0(Runtime.java:787)
at java.lang.System.load(System.java:1022)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1767)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1684)
at java.lang.Runtime.loadLibrary0(Runtime.java:840)
at java.lang.System.loadLibrary(System.java:1047)
at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:67)
at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:47)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Toolkit.loadLibraries(Toolkit.java:1610)
at java.awt.Toolkit.<clinit>(Toolkit.java:1632)
at java.awt.EventQueue.isDispatchThread(EventQueue.java:810)
at java.awt.EventQueue.invokeAndWait(EventQueue.java:982)
at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1348)
at com.install4j.runtime.installer.Installer.getScreenExecutor(Unknown Source)
at com.install4j.runtime.installer.Installer.main(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.install4j.runtime.Launcher.main(Unknown Source)

System properties:

java.runtime.name=IcedTea6 1.3.1 (6b12-0ubuntu6.1) Runtime Environment
exe4j.moduleName=/home/USERNAME/Desktop/splitstree/splitstree-unix-4-10.sh
sun.boot.library.path=/usr/lib/jvm/java-6-openjdk/jre/lib/amd64
java.vm.version=1.6.0_0-b12
java.vm.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
path.separator=:
java.vm.name=OpenJDK 64-Bit Server VM
file.encoding.pkg=sun.io
sun.java.launcher=SUN_STANDARD
user.country=GB
sun.os.patch.level=unknown
install4j.exeDir=/home/USERNAME/Desktop/splitstree/
java.vm.specification.name=Java Virtual Machine Specification
user.dir=/home/USERNAME/Desktop/splitstree/splitstree-unix-4-10.sh.8878.dir
java.runtime.version=1.6.0_0-b12
java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
java.endorsed.dirs=/usr/lib/jvm/java-6-openjdk/jre/lib/endorsed
os.arch=amd64
java.io.tmpdir=/tmp
line.separator=

java.vm.specification.vendor=Sun Microsystems Inc.
os.name=Linux
exe4j.totalDataLength=8349766
sun.java2d.noddraw=true
sun.jnu.encoding=UTF-8
java.library.path=/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server:/usr/lib/jvm/java-6-openjdk/jre/lib/amd64:/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64::/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
java.specification.name=Java Platform API Specification
java.class.version=50.0
sun.management.compiler=HotSpot 64-Bit Server Compiler
os.version=2.6.27-13-generic
user.home=/home/USERNAME
user.zoneinfo.dir=/usr/share/javazi
user.timezone=Europe/Berlin
java.awt.printerjob=sun.print.PSPrinterJob
install4j.jvmDir=/usr
file.encoding=UTF-8
java.specification.version=1.6
java.class.path=i4jruntime.jar:user.jar
user.name=USERNAME
java.vm.specification.version=1.0
java.home=/usr/lib/jvm/java-6-openjdk/jre
sun.arch.data.model=64
user.language=en
java.specification.vendor=Sun Microsystems Inc.
awt.toolkit=sun.awt.motif.MToolkit
java.vm.info=mixed mode
java.version=1.6.0_0
java.ext.dirs=/usr/lib/ext
sun.boot.class.path=/usr/lib/jvm/java-6-openjdk/jre/lib/resources.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rt.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/jsse.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/jce.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/charsets.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rhino.jar:/usr/lib/jvm/java-6-openjdk/jre/classes
install4j.appDir=/home/USERNAME/Desktop/splitstree/
java.vendor=Sun Microsystems Inc.
file.separator=/
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
sun.io.unicode.encoding=UnicodeLittle
sun.cpu.endian=little
sun.desktop=gnome
sun.cpu.isalist=