OLD | NEW |
(Empty) | |
| 1 |
| 2 Building XZ Utils on Windows |
| 3 ============================ |
| 4 |
| 5 Introduction |
| 6 ------------ |
| 7 |
| 8 This document explains shortly where to get and how to install the |
| 9 build tool that are needed to build XZ Utils on Windows. The final |
| 10 binary package will be standalone in sense that it will depend only |
| 11 on DLLs that are included in all Windows installations. |
| 12 |
| 13 These instructions don't apply to Cygwin. XZ Utils can be built under |
| 14 Cygwin in the same way as many other packages. |
| 15 |
| 16 These instructions don't apply to MinGW and MSYS developers either, |
| 17 who may want to package XZ Utils for MinGW or MSYS distributions. |
| 18 You know who you are, and will probably use quite different configure |
| 19 options etc. than what is described here. |
| 20 |
| 21 |
| 22 Installing the toolchain(s) |
| 23 --------------------------- |
| 24 |
| 25 Some of the following is needed: |
| 26 - MSYS is always needed to use the GNU Autotools based build system. |
| 27 - MinGW builds 32-bit x86 binaries. |
| 28 - MingW-w32 builds 32-bit x86 executables too. |
| 29 - MinGW-w64 builds 64-bit x86-64 binaries. |
| 30 |
| 31 So you need to pick between MinGW and MinGW-w32 when building |
| 32 32-bit version. You don't need both. |
| 33 |
| 34 You might find 7-Zip <http://7-zip.org/> handy when extracting |
| 35 some files (especially the .tar.lzma files). The ready-made |
| 36 build script will also use 7-Zip to create the distributable |
| 37 .zip and .7z files. |
| 38 |
| 39 I used the following directory structure but you can use whatever |
| 40 you want. Just note that I will use these in my examples. Each of |
| 41 these should have a subdirectory "bin": |
| 42 |
| 43 C:\devel\tools\msys |
| 44 C:\devel\tools\mingw |
| 45 C:\devel\tools\mingw-w32 |
| 46 C:\devel\tools\mingw-w64 |
| 47 |
| 48 |
| 49 Installing MSYS |
| 50 |
| 51 You can download MSYS from MinGW's Sourceforge page: |
| 52 |
| 53 http://sourceforge.net/projects/mingw/files/ |
| 54 |
| 55 It's under "MSYS Base System". I recommend using MSYS 1.0.11 |
| 56 (MSYS-1.0.11.exe or msysCORE-1.0.11-bin.tar.gz) because that |
| 57 package includes all the required tools. At least some of the |
| 58 later versions include only a subset and thus you would need to |
| 59 download the rest separately. The old version will work fine for |
| 60 building XZ Utils. |
| 61 |
| 62 You can use either the .exe or .tar.gz package. I prefer .tar.gz, |
| 63 because it can be extracted into any directory and later removed |
| 64 without worrying about uninstallers. |
| 65 |
| 66 |
| 67 Installing MinGW |
| 68 |
| 69 You can download the required packages from MinGW's Sourceforge page: |
| 70 |
| 71 http://sourceforge.net/projects/mingw/files/ |
| 72 |
| 73 These version numbers were the latest when I wrote this document, but |
| 74 you probably should pick the latest versions: |
| 75 |
| 76 MinGW Runtime -> mingwrt-3.17-mingw32-dev.tar.gz |
| 77 MinGW API for MS-Windows -> w32api-3.14-mingw32-dev.tar.gz |
| 78 GNU Binutils -> binutils-2.20-1-bin.tar.gz |
| 79 GCC Version 4 -> gcc-full-4.4.0-mingw32-bin-2.tar.lzma |
| 80 |
| 81 The full GCC package is quite big, but if you want a smaller |
| 82 download, you will need to download more than one file, so I'm |
| 83 using the full package in this document for simplicity. |
| 84 |
| 85 Extract the packages in the above order, possibly overwriting files |
| 86 from packages that were extracted earlier. |
| 87 |
| 88 |
| 89 Installing MinGW-w32 or MinGW-w64 |
| 90 |
| 91 You can find the latest MinGW-w32 and MinGW-w64 builds here: |
| 92 |
| 93 http://sourceforge.net/projects/mingw-w64/files/ |
| 94 |
| 95 Locate the appropriate files: |
| 96 |
| 97 Toolchains targeting Win32 -> mingw-w32-*-mingw*.zip |
| 98 Toolchains targeting Win64 -> mingw-w64-*-mingw*.zip |
| 99 |
| 100 I don't know what is the most recommended one. I used sezero's |
| 101 versions from "Personal Builds", since they seemed to have |
| 102 a stable GCC (judging from the GCC version number only). |
| 103 |
| 104 If you will install both MinGW-w32 and MinGW-w64, remember to |
| 105 extract them into different directories. |
| 106 |
| 107 |
| 108 Building XZ Utils |
| 109 ----------------- |
| 110 |
| 111 Start MSYS by going to the directory C:\devel\tools\msys and running |
| 112 msys.bat there (double-click or use command prompt). It will start |
| 113 at "home" directory, which is C:\devel\tools\msys\home\YourUserName. |
| 114 |
| 115 If you have xz-5.x.x.tar.gz in C:\devel, you should be able to build |
| 116 it now with the following commands: |
| 117 |
| 118 cd /c/devel |
| 119 tar xzf xz-5.x.x.tar.gz |
| 120 cd xz-5.x.x |
| 121 sh windows/build.sh |
| 122 |
| 123 If you used some other directory than C:\devel\tools for the build |
| 124 tools, edit the variables near the beginning of build.sh first. |
| 125 |
| 126 If you want to build manually, read the buildit() function in |
| 127 build.sh. Look especially at the latter configure invocation. |
| 128 |
| 129 Be patient. Running configure and other scripts used by the build |
| 130 system is (very) slow under Windows. |
| 131 |
OLD | NEW |