Azureus for Solaris x86

From VuzeWiki
Jump to: navigation, search

Binary Packages[edit]

It is easy to install a pre-packaged version of Azureus. There are unofficial distributions of Azureus for Solaris x86 at the following URLs:

Azureus 2.5.0.4:

Azureus 2.2.0.2:


Compiling from Source[edit]

Officially, Eclipse is not available for Solaris x86, while it is available for Solaris SPARC. Unfortunately, this means that Azureus cannot be used on Solaris x86 out-of-the-box. However, it is not difficult to build Eclipse for Solaris x86 so that you can run Azureus. You will need a few hundred megabytes of free space to compile all of Eclipse, but you can delete most of it afterward.

Eclipse 3.2[edit]

These instructions are for Eclipse 3.2.x.

First of all, you have to download the Eclipse source distribution (i.e., the file eclipse-sourceBuild-srcIncluded-X.Z.Y.zip) and unzip it in some directory, say eclipse.

unzip eclipse-sourceBuild-srcIncluded-X.Z.Y.zip -d eclipse
cd eclipse

Make sure you have the Sun Studio C compiler installed:

cc -V

That should say "Sun C". GCC will not work unless you change the compiler flags in plugins/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_solaris.mak.

If you don't have Sun Studio, you can download it from http://developers.sun.com/sunstudio/

Next, check your Java version:

java -version

If you're using Java 1.5 ("Java 5"), or Java 1.6 ("Java 6"), which is the default on newer releases of Solaris Express, edit the file build.xml in the eclipse directory. Below the line:

<property name="J2SE-1.5" refid="java5.bootclasspath" />

Add this line, if it doesn't exist:

<property name="JavaSE-1.6" refid="java5.bootclasspath" />

Replace:

<condition property="compilerArg" value="-enableJavadoc -encoding ISO-8859-1">

with:

<condition property="compilerArg" value="-enableJavadoc -encoding ISO-8859-1 -nowarn">

Replace:

<property name="compilerArg" value="-encoding ISO-8859-1" />
<property name="javacSource" value="1.3" />
<property name="javacTarget" value="1.2" />

with:

<property name="compilerArg" value="-encoding ISO-8859-1 -nowarn" />
<property name="javacSource" value="1.5" />
<property name="javacTarget" value="1.5" />

Now, run the build script.

CC=cc JAVA_HOME=/usr/java CDE_HOME=/usr/dt ./build -os solaris -ws gtk -arch x86 -java5home /usr/java -compilelibs

This will begin the build process; you may have to wait for a while.

Eventually, the build should finish.

ls plugins/org.eclipse.swt.gtk.solaris.x86

The directory plugins/org.eclipse.swt.gtk.solaris.x86 should contain the following files:

* libswt-atk-gtk-<version>.so
* libswt-awt-gtk-<version>.so
* libswt-cairo-gtk-<version>.so
* libswt-cde-gtk-<version>.so
* libswt-gnome-gtk-<version>.so
* libswt-gtk-<version>.so
* libswt-pi-gtk-<version>.so
* swt.jar


Download the Azureus distribution for SPARC and remove the libswt-*.so and swt.jar files, then copy the files above to their location. You now have created Azureus for x86.

rm /path/to/azureus/libswt-*.so /path/to/azureus/swt.jar
cp -r plugins/org.eclipse.swt.gtk.solaris.x86/libswt-*.so plugins/org.eclipse.swt.gtk.solaris.x86/swt.jar /path/to/azureus


Eclipse 3.0[edit]

These instructions were written for Eclipse 3.0.x. They will not work for Eclipse 3.2 or later. Use the instructions above for Eclipse 3.2.

First of all, you have to download the Eclipse source distribution (i.e., the file eclipse-sourceBuild-srcIncluded-X.Z.Y.zip) and unzip it in some directory, say eclipse. Then you must execute the following commands:

If you're using Solaris 10 or newer, build with GTK+:

cd plugins/org.eclipse.swt.gtk
ant -buildfile build.xml ws/gtk/swtsrc.zip

With Motif (Solaris 9 and earlier):

cd plugins/org.eclipse.swt.motif
ant -buildfile build.xml ws/motif/swtsrc.zip

In order to be able to execute the second command, you must have the ant utility installed on your system. Newer releases of Solaris Express ship with ant as /usr/sfw/bin/ant.

If you do not have ant installed, you can download the current binary distribution of ant from http://ant.apache.org, unpack the distribution and installed it on your system. For example, as of writing, the latest binary distribution of ant is called apache-ant-1.7.0-bin.tar.bz2. Thus, you need to execute the following commands to install ant (you need to use GNU tar for this; the archive uses GNU extensions for long filenames):

gtar xfj apache-ant-1.7.0-bin.tar.bz2
cp -r apache-ant-1.7.0 /to/your/ant/installation/directory


Now, you are ready to create the SWT libraries. In order to do it, you need to unzip the file swtsrc.zip in some directory, say swtscr. Edit the file make_solaris.mak and specify the complete path of your GNU C compiler and probably the complete path of your make utility. For example,

#Compiler (Solaris 9, using GCC)
#CC = /opt/sfw/bin/gcc
# Solaris 10 or later ships with GCC in /usr/sfw
CC = /usr/sfw/bin/gcc


Now, you should be able to create the libraries by executing the command:

bash build.sh


This will create a number of shared objects:

With GTK+ (Solaris 10 and newer):

  • libswt-*-gtk-<version>.so
  • libswt-gtk-<version>.so

With Motif (Solaris 9 and earlier):

  • libswt-*-motif-<version>.so
  • libswt-motif-<version>.so

If you want to build the full Eclipse infrastructure, you also need to compile the Eclipse launcher. To do this you need to change directory to the Eclipse source directory and from there to the directory plugins/platform-launcher/library/gtk (for GTK+) or plugins/platform-launcher/library/motif (Motif). As before, edit the file make_solaris.mak and set the full path of our GNU C compiler and the full path of our make utility. To create the launcher, execute the following command:

csh build.csh


This process will generate the file eclipse. You must copy the three files in a "safe" location and from the root directory of Eclipse you have to issue the following commands to build Eclipse:

export JAVA_HOME=/your/java/directory
export ANT_HOME=/your/ant/directory
sh build


This process can take up to 15 minutes or more depending on your system's speed. Now that you have built all the necessary components, you can download the Solaris SPARC version of Azureus and patch it so it can be used in a Solaris x86 box. To do this, you unzip the binary distribution, and replace the shared objects with those you have created. That's all!