Editing Compiling FileZilla 3 under macOS
From FileZilla Wiki
Jump to navigationJump to searchWarning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | This documentation explains how to setup a build environment for [[FileZilla 3]] and how to compile it under macOS using [https://developer.apple.com/xcode/ Xcode]. These directions have been tested under macOS | + | This documentation explains how to setup a build environment for [[FileZilla 3]] and how to compile it under macOS using [https://developer.apple.com/xcode/ Xcode]. These directions have been tested under macOS 10.14 on an Intel Mac. Resulting binaries are for macOS 10.11 or later. |
__TOC__ | __TOC__ | ||
Line 9: | Line 9: | ||
mkdir -p "$HOME/prefix" | mkdir -p "$HOME/prefix" | ||
mkdir -p "$HOME/src" | mkdir -p "$HOME/src" | ||
− | export CC="clang -mmacosx-version-min=10. | + | export CC="clang -mmacosx-version-min=10.11" |
− | export CXX="clang++ -std=c++17 -stdlib=libc++ -mmacosx-version-min=10. | + | export CXX="clang++ -std=c++17 -stdlib=libc++ -mmacosx-version-min=10.11" |
− | export OBJC="clang -mmacosx-version-min=10. | + | export OBJC="clang -mmacosx-version-min=10.11" |
− | + | export AS="as -mmacosx-version-min=10.11" | |
− | export AS="as -mmacosx-version-min=10. | + | export LD="ld -macosx_version_min 10.11" |
− | export LD="ld -macosx_version_min 10. | ||
export PATH="$HOME/prefix/bin:$PATH" | export PATH="$HOME/prefix/bin:$PATH" | ||
export CPPFLAGS="-I$HOME/prefix/include" | export CPPFLAGS="-I$HOME/prefix/include" | ||
Line 34: | Line 33: | ||
==libidn== | ==libidn== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://ftp.gnu.org/gnu/libidn/libidn-1. | + | curl -OL https://ftp.gnu.org/gnu/libidn/libidn-1.35.tar.gz |
− | tar xvzf libidn-1. | + | tar xvzf libidn-1.35.tar.gz |
− | cd libidn-1. | + | cd libidn-1.35 |
./configure --prefix="$HOME/prefix" --enable-shared --disable-static | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static | ||
make | make | ||
Line 43: | Line 42: | ||
==GMP== | ==GMP== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://gmplib.org/download/gmp/gmp-6. | + | curl -OL https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz |
− | tar xvf gmp-6. | + | tar xvf gmp-6.1.2.tar.xz |
− | cd gmp-6. | + | cd gmp-6.1.2 |
./configure --prefix="$HOME/prefix" --enable-shared --disable-static --enable-fat | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static --enable-fat | ||
make | make | ||
Line 52: | Line 51: | ||
==Nettle== | ==Nettle== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://ftp.gnu.org/gnu/nettle/nettle-3. | + | curl -OL https://ftp.gnu.org/gnu/nettle/nettle-3.4.1.tar.gz |
− | tar xvf nettle-3. | + | tar xvf nettle-3.4.1.tar.gz |
− | cd nettle-3. | + | cd nettle-3.4.1 |
./configure --prefix="$HOME/prefix" --enable-shared --disable-static --enable-fat | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static --enable-fat | ||
make | make | ||
Line 61: | Line 60: | ||
==GnuTLS== | ==GnuTLS== | ||
cd ~/src | cd ~/src | ||
− | curl -OL | + | curl -OL ftp://ftp.gnutls.org/gcrypt/gnutls/v3.6/gnutls-3.6.7.1.tar.xz |
− | tar xvf gnutls-3. | + | tar xvf gnutls-3.6.7.1.tar.xz |
− | cd gnutls-3. | + | cd gnutls-3.6.7 |
− | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static --with-included-libtasn1 --without-p11-kit --disable-doc --enable-local-libopts --disable-nls --with-included-unistring --disable-guile | + | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static --with-included-libtasn1 --without-p11-kit --disable-doc --enable-local-libopts --disable-nls --with-included-unistring --disable-guile |
make | make | ||
make install | make install | ||
Line 70: | Line 69: | ||
==Compile SQLite== | ==Compile SQLite== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://sqlite.org/ | + | curl -OL https://sqlite.org/2018/sqlite-autoconf-3260000.tar.gz |
− | tar xvzf sqlite-autoconf- | + | tar xvzf sqlite-autoconf-3260000.tar.gz |
− | cd sqlite-autoconf- | + | cd sqlite-autoconf-3260000 |
./configure --prefix="$HOME/prefix" --enable-shared --disable-static --disable-dynamic-extensions | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static --disable-dynamic-extensions | ||
make | make | ||
Line 79: | Line 78: | ||
==gettext== | ==gettext== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://ftp.gnu.org/pub/gnu/gettext/gettext-0. | + | curl -OL https://ftp.gnu.org/pub/gnu/gettext/gettext-0.19.8.tar.xz |
− | tar xvf gettext-0. | + | tar xvf gettext-0.19.8.tar.xz |
− | cd gettext-0. | + | cd gettext-0.19.8 |
./configure --prefix="$HOME/prefix" --enable-shared --disable-static | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static | ||
make | make | ||
Line 88: | Line 87: | ||
==Compile wxWidgets== | ==Compile wxWidgets== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://github.com/wxWidgets/wxWidgets/releases/download/v3. | + | curl -OL https://github.com/wxWidgets/wxWidgets/releases/download/v3.0.5/wxWidgets-3.0.5.tar.bz2 |
− | tar xvf wxWidgets-3. | + | tar xvf wxWidgets-3.0.5.tar.bz2 |
− | cd wxWidgets-3. | + | cd wxWidgets-3.0.5 |
− | ./configure --prefix="$HOME/prefix" --enable-shared -- | + | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static --disable-stc --disable-html --disable-richtext --disable-webkit --disable-webview --with-macosx-version-min=10.11 |
make | make | ||
make install | make install | ||
Line 97: | Line 96: | ||
==Compile libfilezilla== | ==Compile libfilezilla== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://download.filezilla-project.org/libfilezilla/libfilezilla-0. | + | curl -OL https://download.filezilla-project.org/libfilezilla/libfilezilla-0.26.0.tar.bz2 |
− | tar xf libfilezilla-0. | + | tar xf libfilezilla-0.26.0.tar.bz2 |
− | cd libfilezilla-0. | + | cd libfilezilla-0.26.0 |
./configure --prefix="$HOME/prefix" --enable-shared --disable-static | ./configure --prefix="$HOME/prefix" --enable-shared --disable-static | ||
make | make | ||
Line 106: | Line 105: | ||
==Compile FileZilla== | ==Compile FileZilla== | ||
cd ~/src | cd ~/src | ||
− | curl -OL https://download.filezilla-project.org/client/FileZilla_3. | + | curl -OL https://download.filezilla-project.org/client/FileZilla_3.52.2_src.tar.bz2 |
− | tar xvjf FileZilla_3. | + | tar xvjf FileZilla_3.52.2_src.tar.bz2 |
− | cd filezilla-3. | + | cd filezilla-3.52.2 |
./configure --with-pugixml=builtin | ./configure --with-pugixml=builtin | ||
make | make |