Difference between revisions of "Cross Compiling FileZilla 3 for Windows under Ubuntu or Debian GNU/Linux"
From FileZilla Wiki
Jump to navigationJump to searchLine 13: | Line 13: | ||
As root, execute: | As root, execute: | ||
− | apt-get install bzip2 mingw-w64 | + | apt-get install bzip2 ca-certificates gcc lzip m4 mingw-w64 pkg-config |
Back as normal user, execute: | Back as normal user, execute: | ||
export PATH="$HOME/prefix-win32/bin:$PATH" | export PATH="$HOME/prefix-win32/bin:$PATH" | ||
+ | export CPPFLAGS="-I$HOME/prefix-win32/include" | ||
+ | export LDFLAGS="-L$HOME/prefix-win32/lib" | ||
+ | export PKG_CONFIG_PATH="-L$HOME/prefix-win32/lib/pkgconfig" | ||
== GMP == | == GMP == | ||
Line 22: | Line 25: | ||
cd ~/src | cd ~/src | ||
wget https://gmplib.org/download/gmp/gmp-6.0.0a.tar.lz | wget https://gmplib.org/download/gmp/gmp-6.0.0a.tar.lz | ||
− | + | tar xvf gmp-6.0.0a.tar.lz | |
+ | cd gmp-6.0.0a | ||
+ | ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared | ||
+ | make | ||
+ | make install | ||
== NETTLE == | == NETTLE == | ||
Line 28: | Line 35: | ||
cd ~/src | cd ~/src | ||
wget https://ftp.gnu.org/gnu/nettle/nettle-2.7.1.tar.gz | wget https://ftp.gnu.org/gnu/nettle/nettle-2.7.1.tar.gz | ||
− | tar | + | tar xvf nettle-2.7.1.tar.gz |
cd nettle-2.7.1 | cd nettle-2.7.1 | ||
./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared | ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared | ||
Line 38: | Line 45: | ||
cd ~/src | cd ~/src | ||
wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/gnutls-3.2.17.tar.lz | wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/gnutls-3.2.17.tar.lz | ||
− | tar | + | tar xvf gnutls-3.2.17.tar.lz |
cd gnutls-3.2.17 | cd gnutls-3.2.17 | ||
./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared | ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared |
Revision as of 18:52, 8 September 2014
This documentation explains how to setup a build environment for FileZilla 3 for Windows and how to compile it under Ubuntu or Debian using Mingw-w64. It will take less time and is more simple than Compiling FileZilla 3 under Windows.
OS version
Any recent Linux should do the trick. For the sake of simplicity, this guide focuses on Debian(-based) distributions.
Known-good Debian(-based) distributions:
- Debian 8 (Jessie) or later (recommended)
- Ubuntu 14.04 LTR or later
Setting up the build environment
As root, execute:
apt-get install bzip2 ca-certificates gcc lzip m4 mingw-w64 pkg-config
Back as normal user, execute:
export PATH="$HOME/prefix-win32/bin:$PATH" export CPPFLAGS="-I$HOME/prefix-win32/include" export LDFLAGS="-L$HOME/prefix-win32/lib" export PKG_CONFIG_PATH="-L$HOME/prefix-win32/lib/pkgconfig"
GMP
cd ~/src wget https://gmplib.org/download/gmp/gmp-6.0.0a.tar.lz tar xvf gmp-6.0.0a.tar.lz cd gmp-6.0.0a ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared make make install
NETTLE
cd ~/src wget https://ftp.gnu.org/gnu/nettle/nettle-2.7.1.tar.gz tar xvf nettle-2.7.1.tar.gz cd nettle-2.7.1 ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared make make install
GNUTLS
cd ~/src wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/gnutls-3.2.17.tar.lz tar xvf gnutls-3.2.17.tar.lz cd gnutls-3.2.17 ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared make make install
Compile SQLite
cd ~/src wget http://sqlite.org/2014/sqlite-autoconf-3080600.tar.gz tar xvzf sqlite-autoconf-3080600.tar.gz cd sqlite-autoconf-3080600 ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared make make install
Compile wxWidgets
cd ~/src wget http://sourceforge.net/projects/wxwindows/files/3.0.1/wxWidgets-3.0.1.tar.bz2 tar xvjf wxWidgets-3.0.1.tar.bz2 cd wxWidgets-3.0.1 ./configure --host=i686-w64-mingw32 --prefix="$HOME/prefix-win32" --disable-shared make make install
Compile FileZilla
cd ~/src wget http://download.filezilla-project.org/client/FileZilla_3.9.0.5_src.tar.bz2 tar xvjf FileZilla_3.9.0.5_src.tar.bz2 cd FileZilla_3.9.0.5_src.tar.bz2 ./configure --host=i686-w64-mingw32 --with-tinyxml=builtin make