Compiling FileZilla 3 under Open Solaris

From FileZilla Wiki

Revision as of 20:46, 15 June 2009 by Jdratlif (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This documentation explains how to setup a build environment for FileZilla 3 and how to compile it under Open Solaris. These directions have been tested under Open Solaris 2008.11 Intel 64-bit. Other versions may or may not work.

Contents


[edit] Setting up the build environment

This includes the compiler and the required tools to build FileZilla 3 and its dependencies.

[edit] Required Packages

The majority of FileZilla requirements can be installed from the Open Solaris repository. You will need gcc, the GTK+ libraries, The X Window headers, GNU libidn, and GNU make. Although Open Solaris has packages for GNU gettext and wxWidgets, they are too outdated to be usable (as of Apr 26, 2009). Solaris make doesn't seem to work for building wxWidgets, so GNU make is also required.

From the package manager, install the following Open Solaris packages. SUNWgnome-common-devel, SUNWgcc, SUNWxwinc, SUNWxorg-headers, SUNWgnu-idn, and SUNWgmake. Allow the package manager to pull in any required dependencies.

[edit] Building the Dependencies

In addition to what we installed from the Open Solaris repository, we also need to build wxWidgets and GNU gettext. The current versions as of this writing (Apr 26, 2009) are wxWidgets 2.8.10 and GNU gettext 0.17. Other versions may or may not work.

If you have a multi-core machine, changing 'nice gmake' to 'nice gmake -jX' will take advantage of it. Rule of thumb says to replace X with the number of cores plus 1 (e.g. nice gmake -j3 for a Dual Core).

[edit] wxWidgets

Download wxWidgets. GTK+ is the preferred UNIX edition.

Open a terminal to build wxGTK.

cd
mkdir fztemp
cd fztemp
gzip -cd ~/Desktop/wxGTK-2.8.10.tar.gz | tar x
mkdir build-wx
cd build-wx
../wxGTK-2.8.10/configure --with-gtk --disable-shared --disable-compat26 \
--enable-unicode --prefix "$HOME"/filezilla
nice gmake
gmake install

[edit] GNU gettext

Download GNU gettext.

Start a terminal and enter the following commands:

cd ~/fztemp
gzip -cd ~/Desktop/gettext-0.17.tar.gz | tar x
cd gettext-0.17
./configure LDFLAGS="-lsec" --prefix "$HOME"/filezilla
nice gmake
gmake install

[edit] Building FileZilla 3

Download the FileZilla source.

Start a terminal and enter the following commands:

cd ~/fztemp
bzip2 -cd ~/Desktop/FileZilla_3.2.4_src.tar.bz2 | tar x
cd filezilla-3.2.4
export PATH="$HOME"/filezilla/bin:$PATH
./configure CPPFLAGS="-I/usr/include/idn" --disable-shared --prefix "$HOME"/filezilla
nice gmake
gmake install

[edit] Cleanup

You can delete the entire ~/fztemp directory after FileZilla is built. You will not need it again. Everything necessary to build new FileZilla revisions is in ~/filezilla.

[edit] Troubleshooting

If you run into problems, please make sure you've followed each step exactly how it is explained and that you haven't missed any steps along the way. Feel free to ask questions on the FileZilla forums.