summaryrefslogtreecommitdiffstats
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL61
1 files changed, 37 insertions, 24 deletions
diff --git a/INSTALL b/INSTALL
index b5889df..570247e 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,13 +1,13 @@
Requirements
------------
-You will need a C compiler.
-I use gcc 5.3.0 and 4.1.2, but the code should compile with any standards
+You will need a C99 compiler. (gcc 3.3.6 or newer is recommended).
+I use gcc 6.1.0 and 3.3.6, but the code should compile with any standards
compliant compiler.
Gcc is available at http://gcc.gnu.org.
The operating system must allow signal handlers read access to objects with
static storage duration so that the cleanup handler for Control-C can delete
-the partial output file.
+the partial output file. (This requirement is for minilzip only).
Procedure
@@ -18,8 +18,8 @@ Procedure
or
lzip -cd lzlib[version].tar.lz | tar -xf -
-This creates the directory ./lzlib[version] containing the source from
-the main archive.
+This creates the directory ./lzlib[version] containing the source code
+extracted from the archive.
2. Change to lzlib directory and run configure.
(Try 'configure --help' for usage instructions).
@@ -27,52 +27,65 @@ the main archive.
cd lzlib[version]
./configure
+ If you choose a C standard, enable the POSIX features explicitly:
+
+ ./configure CFLAGS+='--std=c99 -D_XOPEN_SOURCE=500'
+
If you are compiling on MinGW, use:
./configure CFLAGS+='-D __USE_MINGW_ANSI_STDIO'
-3. Run make.
+3. Run make
make
+to build the library, or
+
+ make bin
+
+to build also minilzip.
+
4. Optionally, type 'make check' to run the tests that come with lzlib.
5. Type 'make install' to install the library and any data files and
- documentation. (You may need to run ldconfig also).
+ documentation. You need root privileges to install into a prefix owned
+ by root. (You may need to run ldconfig also).
Or type 'make install-compress', which additionally compresses the
- info manual after installation. (Installing compressed docs may
- become the default in the future).
+ info manual after installation.
+ (Installing compressed docs may become the default in the future).
+
+ You can install only the library or the info manual by typing
+ 'make install-lib' or 'make install-info' respectively.
- You can install only the library, the info manual or the man page by
- typing 'make install-lib', 'make install-info' or 'make install-man'
- respectively.
+ 'make install-bin' installs the program minilzip and its man page. It
+ installs a shared minilzip if the shared library has been configured.
+ Else it installs a static minilzip.
+ 'make install-bin-compress' additionally compresses the man page after
+ installation.
- 'make install-bin' installs the minilzip program and its man page.
- 'install-bin' installs a shared minilzip if the shared library has
- been configured. Else it installs a static minilzip.
- 'make install-as-lzip' runs 'make install-bin' and then links
- minilzip to the name 'lzip'.
+ 'make install-as-lzip' runs 'make install-bin' and then links minilzip to
+ the name 'lzip'.
Another way
-----------
You can also compile lzlib into a separate directory.
-To do this, you must use a version of 'make' that supports the 'VPATH'
-variable, such as GNU 'make'. 'cd' to the directory where you want the
+To do this, you must use a version of 'make' that supports the variable
+'VPATH', such as GNU 'make'. 'cd' to the directory where you want the
object files and executables to go and run the 'configure' script.
-'configure' automatically checks for the source code in '.', in '..' and
+'configure' automatically checks for the source code in '.', in '..', and
in the directory that 'configure' is in.
-'configure' recognizes the option '--srcdir=DIR' to control where to
-look for the sources. Usually 'configure' can determine that directory
+'configure' recognizes the option '--srcdir=DIR' to control where to look
+for the source code. Usually 'configure' can determine that directory
automatically.
After running 'configure', you can run 'make' and 'make install' as
explained above.
-Copyright (C) 2009-2019 Antonio Diaz Diaz.
+Copyright (C) 2009-2024 Antonio Diaz Diaz.
This file is free documentation: you have unlimited permission to copy,
-distribute and modify it.
+distribute, and modify it.