11

Ubuntu 14.04:

I've downloaded the latest imagemagick source and installed, using option below to configure:

root@usve59445:~/im/ImageMagick-6.9.3-7# ./configure --enable-shared --with-png=yes

After installation however, I have zero items in my built-in list of delegates:

root@usve59445:~/im/ImageMagick-6.9.3-7# identify -version
Version: ImageMagick 6.9.3-7 Q16 x86_64 2016-03-14
Copyright: Copyright (C) 1999-2016 ImageMagick Studio LLC License:  
Features: Cipher DPC OpenMP
Delegates (built-in):

Issue I am getting is 'no delegate for format PNG found' when doing a convert command.

I installed the libpng delegate from: http://www.imagemagick.org/download/delegates/

Extracted the libpng1621.tar.gz into its own folder, then: Ran configure, make, make install (no error messages)

Now when I try and recompile imagemagick, it still says ' Checking for PNG ... no' and --with-png value has 'no' (even though I configure it with --with-png=yes ).

Not sure what I am doing wrong?

Trying to recompile IM using:

root@usve59445:~/im/ImageMagick-6.9.3-7# ./configure --enable-shared=yes --with-png=yes LDFLAGS='-L/usr/local/lib' LIBS=-lpng16

(I think I am using the correct LDFLAGS, but not sure)

root@usve59445:~/im/libpng-1.6.21# libpng16-config --L_opts
-L/usr/local/lib 

root@usve59445:~/im/libpng-1.6.21# libpng16-config --libs
-lpng16


root@usve59445:~/im/libpng-1.6.21# locate libpng
/lib/x86_64-linux-gnu/libpng12.so.0
/lib/x86_64-linux-gnu/libpng12.so.0.46.0
/usr/bin/libpng-config
/usr/bin/libpng12-config
/usr/include/libpng
/usr/include/libpng12
/usr/include/libpng12/png.h
/usr/include/libpng12/pngconf.h
/usr/lib/x86_64-linux-gnu/libpng.a
/usr/lib/x86_64-linux-gnu/libpng.so
/usr/lib/x86_64-linux-gnu/libpng.so.3
/usr/lib/x86_64-linux-gnu/libpng12.a
/usr/lib/x86_64-linux-gnu/libpng12.so
/usr/lib/x86_64-linux-gnu/libpng12.so.0
/usr/lib/x86_64-linux-gnu/pkgconfig/libpng.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/libpng12.pc
/usr/local/bin/libpng-config
/usr/local/bin/libpng16-config
/usr/local/include/libpng16
/usr/local/include/libpng16/png.h
/usr/local/include/libpng16/pngconf.h
/usr/local/include/libpng16/pnglibconf.h
/usr/local/lib/libpng.a
/usr/local/lib/libpng.la
/usr/local/lib/libpng.so
/usr/local/lib/libpng16.a
/usr/local/lib/libpng16.la
/usr/local/lib/libpng16.so
/usr/local/lib/libpng16.so.16
/usr/local/lib/libpng16.so.16.21.0
/usr/local/lib/pkgconfig/libpng.pc
/usr/local/lib/pkgconfig/libpng16.pc
/usr/local/share/man/man3/libpng.3
/usr/local/share/man/man3/libpngpf.3
/usr/share/doc/libpng12-0
/usr/share/doc/libpng12-dev
/usr/share/doc/libpng3
/usr/share/doc/libpng12-0/ANNOUNCE
/usr/share/doc/libpng12-0/KNOWNBUG
/usr/share/doc/libpng12-0/README.Debian
/usr/share/doc/libpng12-0/README.gz
/usr/share/doc/libpng12-0/TODO
/usr/share/doc/libpng12-0/changelog.Debian.gz
/usr/share/doc/libpng12-0/copyright
/usr/share/doc/libpng12-0/libpng-1.2.46.txt.gz
/usr/share/doc/libpng12-dev/changelog.Debian.gz
/usr/share/doc/libpng12-dev/copyright
/usr/share/doc/libpng12-dev/examples
/usr/share/doc/libpng12-dev/examples/example.c.gz
/usr/share/doc/libpng12-dev/examples/pngtest.c.gz
/usr/share/doc/libpng12-dev/examples/pngtest.png
/usr/share/doc-base/libpng12
/usr/share/man/man1/libpng-config.1.gz
/usr/share/man/man1/libpng12-config.1.gz
/usr/share/man/man3/libpng.3.gz
/var/cache/apt/archives/libpng12-0_1.2.46-3ubuntu4.2_amd64.deb
/var/cache/apt/archives/libpng12-dev_1.2.46-3ubuntu4.2_amd64.deb
/var/cache/apt/archives/libpng3_1.2.46-3ubuntu4.2_amd64.deb
/var/lib/dpkg/info/libpng12-0:amd64.list
/var/lib/dpkg/info/libpng12-0:amd64.md5sums
/var/lib/dpkg/info/libpng12-0:amd64.postinst
/var/lib/dpkg/info/libpng12-0:amd64.postrm
/var/lib/dpkg/info/libpng12-0:amd64.shlibs
/var/lib/dpkg/info/libpng12-dev.list
/var/lib/dpkg/info/libpng12-dev.md5sums
/var/lib/dpkg/info/libpng3:amd64.list
  • Installed libpng via this also: apt-get install libpng12-0 - Still getting same checking PNG ... no (no delegate found). Installed libjpeg62 via apt-get, did a recompile of IM and it appears successfully in the delegates list - just PNG does not work!! – gvanto Mar 14 '16 at 4:55
  • You have to install the -dev packages (libpng12-dev, perhaps), for building software with a library. – muru Mar 14 '16 at 6:10
  • Hi muru, thanks already did that, not working. Trying to use the --x-libraries option like this guy did: stackoverflow.com/questions/28237800/… But 'locate libpng' gives me a lot of different locations (added to question above), not sure which one I should use? (have tried a few, none of which seem to get PNG compiled into IM). – gvanto Mar 14 '16 at 23:38
  • Spent many hours on this now with no luck. Willing to send a paypal of $50 for anyone with a (working) advice – gvanto Mar 15 '16 at 3:57
20

You are making things a little too hard for yourself, here is a quick and dirty guide that ran well for me on Trusty Tahr:

First pick up a few known dependencies:

sudo apt-get install build-essential checkinstall \
             libx11-dev libxext-dev zlib1g-dev libpng12-dev \
             libjpeg-dev libfreetype6-dev libxml2-dev

This does not quite catch everything so activate the Source repositories by clicking on 'Souce Code' here:

Dash >> Software & Updates >> Source Code

and then running the following:

sudo apt-get build-dep imagemagick

Create a build folder and change to it:

mkdir $HOME/imagemagick_build && cd $HOME/imagemagick_build

And finally download, extract, compile and install by simply copying and pasting the entire code box below into a Terminal window:

wget https://www.imagemagick.org/download/ImageMagick-7.0.8-28.tar.bz2 && \
tar xvf ImageMagick-7.0.8-28.tar.bz2 && cd ImageMagick-7.0.8-28 && ./configure && make && \
sudo checkinstall -D --install=yes --fstrans=no --pakdir "$HOME/imagemagick_build" \
     --pkgname imagemagick --backup=no --deldoc=yes --deldesc=yes --delspec=yes --default \
     --pkgversion "7.0.8-28" && \
make distclean && sudo ldconfig

And finally test this, looking especially for the png you are missing in your own install:

andrew@corinth:~$ identify -version
Version: ImageMagick 7.0.5-10 Q16 x86_64 2017-06-05 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2017 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: Cipher DPC OpenMP 
Delegates (built-in): bzlib djvu fftw fontconfig freetype jbig jng jpeg lcms lqr lzma openexr pangocairo png tiff wmf x xml zlib
andrew@corinth:~$ 

And there is the png option you were missing :).

| improve this answer | |
  • 1
    This works, thanks so much andrew.46!!!! What is your paypal email? (can send via private IM if possible) – gvanto Mar 17 '16 at 0:42
  • 2
    Great to hear that it all works! I do not want money, I prefer to do this as an Open Source thing but thanks for the thought :). – andrew.46 Mar 17 '16 at 1:01
  • 1
    after hours of other "answers" this one finally worked for me. I think the critical part for me was the known dependencies and sudo apt-get build-dep imagemagick. Thanks! – Scott Jungwirth Nov 7 '17 at 4:39
  • @ScottJungwirth Great news! I have not tested thins answer for a while but I see a small stream of editors have been bumping the version :) – andrew.46 Nov 7 '17 at 6:43
  • Thanks -- this mostly worked. Still some errors reported on Linux Mint 32-bit. So I performed the && chained commands on single lines. It seems insane to me how difficult it was/is to get imagemagick in a state where it can do a bit of useful work... – RBV Apr 18 '18 at 18:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.