summaryrefslogtreecommitdiff
path: root/docs/backup/win32_build_on_linux_using_mingw.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/backup/win32_build_on_linux_using_mingw.txt')
-rw-r--r--docs/backup/win32_build_on_linux_using_mingw.txt64
1 files changed, 64 insertions, 0 deletions
diff --git a/docs/backup/win32_build_on_linux_using_mingw.txt b/docs/backup/win32_build_on_linux_using_mingw.txt
new file mode 100644
index 00000000..407096b1
--- /dev/null
+++ b/docs/backup/win32_build_on_linux_using_mingw.txt
@@ -0,0 +1,64 @@
+How to build Box Backup for Windows (Native) on Linux using MinGW
+By Chris Wilson, 2005-12-07
+
+Install the MinGW cross-compiler for Windows:
+
+- Debian users can "apt-get install mingw32"
+- Fedora and SuSE users can download RPM packages from
+ [http://mirzam.it.vu.nl/mingw/]
+
+You will need to know the prefix used by the cross-compiler executables.
+It will usually be something like "ix86-mingw32*-". All the binaries in the
+cross-compiler package will start with this prefix. The documentation below
+assumes that it is "i386-mingw32-". Adjust to taste.
+
+Download Zlib from [http://www.zlib.net/], unpack and enter source directory:
+
+ export CC=i386-mingw32-gcc
+ export AR="i386-mingw32-ar rc"
+ export RANLIB="i386-mingw32-ranlib"
+ ./configure
+ make
+ make install prefix=/usr/local/i386-mingw32
+
+Download OpenSSL 0.9.8b from
+[http://www.openssl.org/source/openssl-0.9.8b.tar.gz]
+
+Unpack and configure:
+
+ tar xzvf openssl-0.9.8b.tar.gz
+ cd openssl-0.9.8b
+ ./Configure --prefix=/usr/local/i386-mingw32 mingw
+ make makefile.one
+ wget http://bbdev.fluffy.co.uk/svn/box/chris/win32/support/openssl-0.9.8b-mingw-cross.patch
+ patch -p1 < openssl-0.9.8b-mingw-cross.patch
+ make -f makefile.one
+ make -f makefile.one install
+
+Download PCRE from
+[http://prdownloads.sourceforge.net/pcre/pcre-6.3.tar.bz2?download]
+
+Unpack:
+
+ tar xjvf pcre-6.3.tar.bz2
+ cd pcre-6.3
+
+Configure and make:
+
+ ./configure --host=i586-mingw32msvc --prefix=/usr/i386-mingw32/
+ make winshared wininstall
+ cp .libs/libpcreposix.a /usr/i386-pc-mingw32/lib
+ cp pcreposix.h /usr/i386-pc-mingw32/include/regex.h
+
+Configure Box with:
+
+ export CXX="i386-mingw32-g++"
+ export AR=i386-mingw32-ar
+ export RANLIB=i386-mingw32-ranlib
+ export CFLAGS="-mthreads"
+ export CXXFLAGS="-mthreads"
+ export LDFLAGS="-mthreads"
+ export LIBS="-lcrypto -lws2_32 -lgdi32"
+ (if you don't have a "configure" file, run "./bootstrap")
+ ./configure --target=i386-mingw32
+ make CXX="$CXX" AR="$AR" RANLIB="$RANLIB" WINDRES="i386-mingw32-windres"