From afd591fa8c7528169234d15e3c71fc26b2b34575 Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Tue, 19 Jul 2016 09:00:16 -0700 Subject: [PATCH] README.WINDOWS: describe 64-bit build by default --- README.WINDOWS | 46 +++++++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 21 deletions(-) diff --git a/README.WINDOWS b/README.WINDOWS index 100bbdd4..9d57fbc7 100644 --- a/README.WINDOWS +++ b/README.WINDOWS @@ -91,18 +91,18 @@ from source, potentially with customizations. Although wimlib's build system is designed for UNIX-like systems and is easiest to use on Linux, it's possible to build Windows binaries on Windows using Cygwin with MinGW. To do this, follow the instructions below. For the sake of example, I'll assume you are building a -32-bit version of wimlib v1.10.0. +64-bit version of wimlib v1.10.0. Run the Cygwin installer, available from https://www.cygwin.com/setup-x86.exe. When you get to the package selection screen, choose the following additional packages from category "Devel": - make - - mingw64-i686-gcc-g++ - - mingw64-i686-binutils - - mingw64-i686-libxml2 - - mingw64-i686-winpthreads - - mingw64-i686-pkg-config + - mingw64-x86_64-binutils + - mingw64-x86_64-gcc-g++ + - mingw64-x86_64-libxml2 + - mingw64-x86_64-pkg-config + - mingw64-x86_64-winpthreads Download wimlib's source code from https://wimlib.net/downloads/wimlib-1.10.0.tar.gz. @@ -111,28 +111,32 @@ Start a Cygwin terminal and run the following commands: cd /cygdrive/c/Users/example/Downloads # (or wherever you downloaded the source to) tar xf wimlib-1.10.0.tar.gz cd wimlib-1.10.0 - ./configure --host=i686-w64-mingw32 + ./configure --host=x86_64-w64-mingw32 make If successful, the new binaries "libwim-15.dll" and "wimlib-imagex.exe" will have been produced in the .libs directory. By default the binaries are built with debug symbols. If desired, you can use -i686-w64-mingw32-strip to strip them. +x86_64-w64-mingw32-strip to strip them. libwim-15.dll will be linked to several other DLLs which you will need as well: - libwinpthread-1.dll - - libxml2-2.dll - - libgcc_s_sjlj-1.dll - -They can be found in "C:\cygwin\usr\i686-w64-mingw32\sys-root\mingw\bin" and -must be placed alongside libwim-15.dll for it to run portably. (In the official -binary release, these third-party libraries are linked to libwim-15.dll -statically rather than dynamically.) - -Building 64-bit binaries is very similar, but you'll need to replace "i686" with -"x86_64" everywhere in the above instructions. Note that you can build both -32-bit and 64-bit binaries from the same Cygwin installation, provided that you -install both the mingw64-i686-* and mingw64-x86_64-* packages; and you can run -the Cygwin setup program to install more packages at any time. + - libxml2-2.dll, which also requires: + - iconv.dll + - liblzma-5.dll + - zlib1.dll + +These DLLs can be found in "C:\cygwin\usr\x86_64-w64-mingw32\sys-root\mingw\bin" +and must be placed alongside libwim-15.dll for it to run portably. (In the +official binary release, these third-party libraries are linked to libwim-15.dll +statically rather than dynamically --- or are unnecessary, in the case of +libxml2's dependencies.) + +Building 32-bit binaries is very similar, but you'll need to replace "x86_64" +with "i686" everywhere in the above instructions, and libwim-15.dll will also +depend on libgcc_s_sjlj-1.dll. Note that you can build both 32-bit and 64-bit +binaries from the same Cygwin installation, provided that you install both the +mingw64-i686-* and mingw64-x86_64-* packages; and you can run the Cygwin setup +program to install more packages at any time. -- 2.43.0