4 On Unix/Linux and similar systems, you can simply type
6 ./configure [--prefix=/path]
10 and ignore the rest of this document.
12 If configure does not work on your system and you have a reasonably
13 up-to-date set of tools, running ./autogen.sh before running ./configure
14 may fix the problem. You can also run the individual commands in
15 autogen.sh with the --force option, if supported by your version of
16 the tools. To be really sure that you aren't using any of the included
17 pre-built scripts, you can do this:
19 ./configure --enable-maintainer-mode
22 ./configure [--prefix=/path] [other options]
27 Instead, you can use one of the custom-built makefiles in the
30 cp scripts/makefile.system makefile
34 The files that are presently available in the scripts directory
35 are listed and described in scripts/README.txt.
37 Or you can use one of the "projects" in the "projects" directory.
39 Before installing libpng, you must first install zlib, if it
40 is not already on your system. zlib can usually be found
41 wherever you got libpng. zlib can be placed in another directory,
42 at the same level as libpng.
44 If you want to use "cmake" (see www.cmake.org), type
46 cmake . -DCMAKE_INSTALL_PREFIX=/path
50 If your system already has a preinstalled zlib you will still need
51 to have access to the zlib.h and zconf.h include files that
52 correspond to the version of zlib that's installed.
54 You can rename the directories that you downloaded (they
55 might be called "libpng-x.y.z" or "libpngNN" and "zlib-1.2.5"
56 or "zlib125") so that you have directories called "zlib" and "libpng".
58 Your directory structure should look like this:
60 .. (the parent directory)
61 libpng (this directory)
66 CMakeLists.txt => "cmake" script
68 configure.ac, configure, Makefile.am, Makefile.in,
69 autogen.sh, config.guess, ltmain.sh, missing, libpng.pc.in,
70 libpng-config.in, aclocal.m4, config.h.in, config.sub,
71 depcomp, install-sh, mkinstalldirs, test-pngtest.sh
83 *.def (module definition files)
94 If the line endings in the files look funny, you may wish to get the other
95 distribution of libpng. It is available in both tar.gz (UNIX style line
96 endings) and zip (DOS style line endings) formats.
98 If you are building libpng with MSVC, you can enter the
99 libpng projects\visualc6 or visualc71 directory and follow the instructions
102 Otherwise enter the zlib directory and follow the instructions in zlib/README,
103 then come back here and run "configure" or choose the appropriate
104 makefile.sys in the scripts directory.
106 Copy the file (or files) that you need from the
107 scripts directory into this directory, for example
109 MSDOS example: copy scripts\makefile.msc makefile
110 UNIX example: cp scripts/makefile.std makefile
112 Read the makefile to see if you need to change any source or
113 target directories to match your preferences.
115 Then read pnglibconf.dfa to see if you want to make any configuration
118 Then just run "make" which will create the libpng library in
119 this directory and "make test" which will run a quick test that reads
120 the "pngtest.png" file and writes a "pngout.png" file that should be
121 identical to it. Look for "9782 zero samples" in the output of the
122 test. For more confidence, you can run another test by typing
123 "pngtest pngnow.png" and looking for "289 zero samples" in the output.
124 Also, you can run "pngtest -m contrib/pngsuite/*.png" and compare
125 your output with the result shown in contrib/pngsuite/README.
127 Most of the makefiles will allow you to run "make install" to
128 put the library in its final resting place (if you want to
129 do that, run "make install" in the zlib directory first if necessary).
130 Some also allow you to run "make test-installed" after you have
133 Further information can be found in the README and libpng-manual.txt
134 files, in the individual makefiles, in png.h, and the manual pages