4

I've tried to find a simple explanation for several hours but I just can't seem to find anything useful. I'm primarily a Windows programmer with some experience with Linux-based OSes. For some reason doing apt install imagemagick only gives me a really old version (pre-2012) and there's a change in the later versions that I need, which means I need to build from source.

Compiling IM 7 on Ubuntu 18.04 is simple enough: Download tar.gz, extract, ./configure, make and make install. However it seems that PNG support is not included by default (why??).

I've tried doing ./configure --with-png but that didn't achieve anything (I see --with-png=yes no, which presumably means "yes, you've asked for PNG support but no, I haven't given it to you"). I've seen many forum posts and SE questions about this, but everyone asking seems to have some prior knowledge which I am clearly missing and the questions appear to be about some later step in the process.

So, what do I actually need to do to get PNG support?

(And as some bonus questions: Why is there no documentation for this? Why does it not include PNG support out of the box? Why are there no prebuilt binaries for Ubuntu?)

Related question: Imagemagick still exists after apt remove?

6
  • Have you installed libpng and libpng-devel with apt? The png support is enabled by default in 7.x and should work. Mar 12 '20 at 0:14
  • Try to install it using apt first. It should install dependencies. Then remove imagemagick without removing its dependencies and try again your manual compilation.
    – Gryu
    Mar 12 '20 at 0:27
  • @Gryu How do I remove imagemagick without removing its dependencies?
    – Clonkex
    Mar 12 '20 at 0:29
  • sudo apt remove imagemagick removes only imagemagick. What is your imagemagick version from repositories?
    – Gryu
    Mar 12 '20 at 0:31
  • 1
    @Gryu If you mean the version I get with apt install, it said Version: ImageMagick 6.9.7-4 Q16 x86_64 20170114. Though since building from source I seem to only get the new (PNG-less) version when I run (for example) magick -version
    – Clonkex
    Mar 12 '20 at 0:37
3

I highly recommend ImageMagick Easy Install (IMEI):

https://github.com/SoftCreatR/imei/

It tracks down all the source/development libraries needed for the additional ImageMagick "delegates" (image formats in IM-speak). Plus, it can also incrementally update your local install from newer source after the initial installation.

Installation steps as of now:

git clone https://github.com/SoftCreatR/imei
cd imei
sudo ./imei.sh
2
  • 1
    You should at least provide som installation details from that link. Mar 15 '21 at 13:21
  • 1
    Works like a charm.
    – SGL
    Apr 11 '21 at 1:19
0

I am not sure what error message you were getting, but I was getting convert: no decode delegate for this image format `JPG' @ error/constitute.c/ReadImage/562 when working with jpegs with a fresh ImageMagick install from source.

To resolve it:

  1. uncomment deb-src http://us.archive.ubuntu.com/ubuntu/ bionic main restricted in /etc/apt/sources.list

  2. install dependencies

sudo apt update
sudo apt build-dep imagemagick
  1. Reinstall ImageMagick
./configure
make
sudo make install
sudo ldconfig /usr/local/lib

source: https://linuxconfig.org/how-to-install-imagemagick-7-on-ubuntu-18-04-linux

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.