Windows: Update build instructions.

This commit is contained in:
Lasse Collin 2014-12-20 20:42:33 +02:00
parent 0152f72bf6
commit 3af91040bb
2 changed files with 30 additions and 29 deletions

15
INSTALL
View File

@ -138,15 +138,18 @@ XZ Utils Installation
redistributable .zip or .7z file. See windows/INSTALL-Windows.txt redistributable .zip or .7z file. See windows/INSTALL-Windows.txt
for more information. for more information.
It might be possible to build liblzma with a non-GNU toolchain too, It may be possible to build liblzma with other toolchains too, but
but that will probably require writing a separate makefile. Building that will probably require writing a separate makefile. Building
the command line tools with non-GNU toolchains will be harder than the command line tools with non-GNU toolchains will be harder than
building only liblzma. building only liblzma.
Even if liblzma is built with MinGW, the resulting DLL or static Starting with XZ Utils 5.2.0, building liblzma (not the whole
library can be used by other compilers and linkers, including MSVC. XZ Utils) should work with MSVC 2013 update 2 or later using
Thus, it shouldn't be a problem to use MinGW to build liblzma even windows/config.h. No project files or makefiles are included yet,
if you cannot use MinGW to build the rest of your project. See so the build process isn't as convenient yet as it could be.
Even if liblzma is built with MinGW(-w64), the resulting DLL can
be used by other compilers and linkers, including MSVC. See
windows/README-Windows.txt for details. windows/README-Windows.txt for details.

View File

@ -25,16 +25,16 @@ Installing the toolchain(s)
Some of the following is needed: Some of the following is needed:
- MSYS is always needed to use the GNU Autotools based build system. - MSYS is always needed to use the GNU Autotools based build system.
- MinGW builds 32-bit x86 binaries. - MinGW builds 32-bit x86 binaries.
- MingW-w32 builds 32-bit x86 executables too. - 32-bit MinGW-w64 (I call it MingW-w32 here) builds 32-bit x86
executables too.
- MinGW-w64 builds 64-bit x86-64 binaries. - MinGW-w64 builds 64-bit x86-64 binaries.
So you need to pick between MinGW and MinGW-w32 when building So you need to pick between MinGW and MinGW-w32 when building
32-bit version. You don't need both. 32-bit version. You don't need both.
You might find 7-Zip <http://7-zip.org/> handy when extracting You might find 7-Zip <http://7-zip.org/> handy when extracting
some files (especially the .tar.lzma files). The ready-made some files. The ready-made build script build.bash will also use
build script will also use 7-Zip to create the distributable 7-Zip to create the distributable .zip and .7z files.
.zip and .7z files.
I used the following directory structure but you can use whatever I used the following directory structure but you can use whatever
you want. Just note that I will use these in my examples. Each of you want. Just note that I will use these in my examples. Each of
@ -50,14 +50,13 @@ Installing MSYS
You can download MSYS from MinGW's Sourceforge page: You can download MSYS from MinGW's Sourceforge page:
http://sourceforge.net/projects/mingw/files/ http://sourceforge.net/projects/mingw/files/MSYS/Base/msys-core/
It's under "MSYS Base System". I recommend using MSYS 1.0.11 I recommend using MSYS 1.0.11 (MSYS-1.0.11.exe or
(MSYS-1.0.11.exe or msysCORE-1.0.11-bin.tar.gz) because that msysCORE-1.0.11-bin.tar.gz) because that package includes all the
package includes all the required tools. At least some of the required tools. At least some of the later versions include only
later versions include only a subset and thus you would need to a subset and thus you would need to download the rest separately.
download the rest separately. The old version will work fine for The old version will work fine for building XZ Utils.
building XZ Utils.
You can use either the .exe or .tar.gz package. I prefer .tar.gz, You can use either the .exe or .tar.gz package. I prefer .tar.gz,
because it can be extracted into any directory and later removed because it can be extracted into any directory and later removed
@ -66,6 +65,8 @@ Installing MSYS
Installing MinGW Installing MinGW
NOTE: This section may be outdated. I haven't tried MinGW recently.
You can download the required packages from MinGW's Sourceforge page: You can download the required packages from MinGW's Sourceforge page:
http://sourceforge.net/projects/mingw/files/ http://sourceforge.net/projects/mingw/files/
@ -88,21 +89,18 @@ Installing MinGW
Installing MinGW-w32 or MinGW-w64 Installing MinGW-w32 or MinGW-w64
You can find the latest MinGW-w32 and MinGW-w64 builds here: I used the packages from Mingw-builds project. With that it is
enough to pick one .7z file for 32-bit and another for 64-bit
toolchain. For XZ Utils 5.2.0 I used the packages from these
directories:
http://sourceforge.net/projects/mingw-w64/files/ http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.2/threads-win32/sjlj/
Locate the appropriate files: http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.2/threads-win32/sjlj/
Toolchains targeting Win32 -> mingw-w32-*-mingw*.zip If you install both MinGW-w32 and MinGW-w64, remember to extract
Toolchains targeting Win64 -> mingw-w64-*-mingw*.zip them into different directories. build.bash looks at
C:\devel\tools\mingw-w32 and C:\devel\tools\mingw-w64 by default.
I don't know what is the most recommended one. I used sezero's
versions from "Personal Builds", since they seemed to have
a stable GCC (judging from the GCC version number only).
If you will install both MinGW-w32 and MinGW-w64, remember to
extract them into different directories.
Building XZ Utils Building XZ Utils