diff --git a/ANNOUNCE b/ANNOUNCE index ebddcb9d3..53afecce5 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1386,6 +1386,7 @@ Version 1.7.0beta82 [July 2, 2016] depends on PNG_LIBPNG_VER. Moved pngcp to contrib/tools and added pngcp to the build together with a pngcp.dfa configuration test (John Bowler) + Added a "Common linking failures" section to the INSTALL document. Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/CHANGES b/CHANGES index aa80b8807..ee3c99070 100644 --- a/CHANGES +++ b/CHANGES @@ -5686,6 +5686,7 @@ Version 1.7.0beta82 [July 2, 2016] depends on PNG_LIBPNG_VER. Moved pngcp to contrib/tools and added pngcp to the build together with a pngcp.dfa configuration test (John Bowler) + Added a "Common linking failures" section to the INSTALL document. Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/INSTALL b/INSTALL index cc3c2c485..663ac25ed 100644 --- a/INSTALL +++ b/INSTALL @@ -18,7 +18,8 @@ VIII. Configuring libpng for 16-bit platforms XIII. Removing unwanted object code XIV. Changes to the build and configuration of libpng in libpng-1.5.x XV. Setjmp/longjmp issues - XVI. Other sources of information about libpng + XVI. Common linking failures +XVII. Other sources of information about libpng I. Simple installation @@ -47,7 +48,9 @@ If configure does not work on your system, or if you have a need to change configure.ac or Makefile.am, and you have a reasonably up-to-date set of tools, running ./autogen.sh in a git clone before running ./configure may fix the problem. To be really sure that you -aren't using any of the included pre-built scripts, you can do this: +aren't using any of the included pre-built scripts, especially if you +are building from a tar distribution instead of a git distribution, +do this: ./configure --enable-maintainer-mode make maintainer-clean @@ -380,28 +383,20 @@ This requires setjmp/longjmp, so you must either build the library with PNG_SETJMP_SUPPORTED defined, or with PNG_SIMPLIFIED_READ_SUPPORTED and PNG_SIMPLIFIED_WRITE_SUPPORTED undefined. -XVI. Other sources of information about libpng: +XVI. Common linking failures + +If your application fails to find libpng or zlib entries while linking: + + Be sure "-lz" appears after "-lpng" on your linking command. + + Be sure you have built libpng, zlib, and your application for the + same platform (e.g., 32-bit or 64-bit). + + If you are using the vstudio project, observe the WARNING in + project/vstudio/README.txt. + +XVII. Other sources of information about libpng: Further information can be found in the README and libpng-manual.txt files, in the individual makefiles, in png.h, and the manual pages libpng.3 and png.5. - -Using the ./configure script -- 16 December 2002. -================================================= - -The ./configure script should work compatibly with what scripts/makefile.* -did, however there are some options you might need to add to configure -explicitly, which previously was done semi-automatically (if you didn't edit -scripts/makefile.* yourself, that is) - -CFLAGS="-Wall -O -funroll-loops \ --malign-loops=2 -malign-functions=2" ./configure --prefix=/usr/include \ ---with-pkgconfigdir=/usr/lib/pkgconfig --includedir=/usr/include - -You can alternatively specify --includedir=/usr/include, /usr/local/include, -/usr/include/libpng17, or whatever. - -If you find that the configure script is out-of-date or is not supporting -your platform properly, try running autogen.sh to regenerate "configure", -"Makefile.in", and the other configuration files. Then try configure again. -