README-Windows.txt | README-Windows.txt | |||
---|---|---|---|---|
skipping to change at line 23 | skipping to change at line 23 | |||
binary package, are in the public domain. XZ Utils have been built | binary package, are in the public domain. XZ Utils have been built | |||
for this package with MinGW-w64 and linked statically against its | for this package with MinGW-w64 and linked statically against its | |||
runtime libraries. See COPYING-Windows.txt for the copyright and | runtime libraries. See COPYING-Windows.txt for the copyright and | |||
license information that applies to the MinGW-w64 runtime. You must | license information that applies to the MinGW-w64 runtime. You must | |||
include it when redistributing these XZ Utils binaries. | include it when redistributing these XZ Utils binaries. | |||
Package contents | Package contents | |||
---------------- | ---------------- | |||
All executables and libraries in this package require msvcrt.dll. | All executables and libraries in this package require msvcrt.dll. | |||
It's included in all recent Windows versions. On Windows 95 it | It's included in all recent Windows versions. (On Windows 95 it | |||
might be missing, but once you get it somewhere, XZ Utils should | might be missing, but once you get it somewhere, the i686 binaries | |||
run even on Windows 95. | should run even on Windows 95 if the processor is new enough.) | |||
There are two different versions of the executable and library files. | There is a SSE2 optimization in the compression code but this | |||
There is one directory for each type of binaries: | version of XZ Utils doesn't include run-time processor detection. | |||
This is why there is a separate i686-SSE2 version. | ||||
bin_i486 32-bit x86 (i486 and up), Windows 95 and later | ||||
bin_x86-64 64-bit x86-64, Windows XP and later | There is one directory for each type of executable and library files: | |||
bin_i686 32-bit x86 (i686 and newer), Windows 95 and later | ||||
bin_i686-sse2 32-bit x86 (i686 with SSE2), Windows 98 and later | ||||
bin_x86-64 64-bit x86-64, Windows Vista and later | ||||
Each of the above directories have the following files: | Each of the above directories have the following files: | |||
*.exe Command line tools. (It's useless to double-click | *.exe Command line tools. (It's useless to double-click | |||
these; use the command prompt instead.) These have | these; use the command prompt instead.) These have | |||
been linked statically against liblzma, so they | been linked statically against liblzma, so they | |||
don't require liblzma.dll. Thus, you can copy e.g. | don't require liblzma.dll. Thus, you can copy e.g. | |||
xz.exe to a directory that is in PATH without copying | xz.exe to a directory that is in PATH without copying | |||
any other files from this package. | any other files from this package. | |||
skipping to change at line 90 | skipping to change at line 94 | |||
first. You need the "lib" command from MSVC and liblzma.def from | first. You need the "lib" command from MSVC and liblzma.def from | |||
the "doc" directory of this package. Here is the command that works | the "doc" directory of this package. Here is the command that works | |||
on 32-bit x86: | on 32-bit x86: | |||
lib /def:liblzma.def /out:liblzma.lib /machine:ix86 | lib /def:liblzma.def /out:liblzma.lib /machine:ix86 | |||
On x86-64, the /machine argument has to naturally be changed: | On x86-64, the /machine argument has to naturally be changed: | |||
lib /def:liblzma.def /out:liblzma.lib /machine:x64 | lib /def:liblzma.def /out:liblzma.lib /machine:x64 | |||
Linking against static liblzma might work too, but usually you | If you need to link statically against liblzma, you should build | |||
should use liblzma.dll if possible. (Or, if having a decompressor | liblzma with MSVC 2013 update 2 or later. Alternatively, if having | |||
is enough, consider using XZ Embedded or LZMA SDK which can be | a decompressor is enough, consider using XZ Embedded or LZMA SDK. | |||
compiled with MSVC.) | ||||
When you plan to link against static liblzma, you need to tell | ||||
To try linking against static liblzma, rename liblzma.a to e.g. | lzma.h to not use __declspec(dllimport) by defining the macro | |||
liblzma_static.lib and tell MSVC to link against it. You also need | LZMA_API_STATIC. You can do it either in the C/C++ code | |||
to tell lzma.h to not use __declspec(dllimport) by defining the | ||||
macro LZMA_API_STATIC. You can do it either in the C/C++ code | ||||
#define LZMA_API_STATIC | #define LZMA_API_STATIC | |||
#include <lzma.h> | #include <lzma.h> | |||
or by adding it to compiler options. | or by adding it to compiler options. | |||
Other compilers | Other compilers | |||
If you are using some other compiler, see its documentation how to | If you are using some other compiler, see its documentation how to | |||
create an import library (if it is needed). If it is simple, I | create an import library (if it is needed). If it is simple, I | |||
End of changes. 2 change blocks. | ||||
18 lines changed or deleted | 20 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |