Skip to content
Advertisement

How to add delegates to ImageMagick in Gentoo

How can one add more delegates to ImageMagick? I’m on gentoo (so, emerge), and while I see a plethora of links to different issues, I’ve not found any general how-to’s:

  • This points to the source of the delegate libraries here
  • This points to the need to install underlying image libraries (e.g. libpng), and seems to generally be a repository for everyone’s ImageMagick “no decode delegate” questions.
  • This sort of points back to a second person’s issue in the first bullet, though it makes use of a ./configure command that I don’t see in my ImageMagick directory
  • And finally, this might be the answer I need, though the syntax is garbled such that I cannot tell what the intended command is.

In particular, none of these explain what exactly one must do with the delegate libraries here, if they do indeed need to be installed manually. Anyway, my delegates are currently listed (via convert -list configure|grep -i delegate) as bzlib, mpeg, and zlib. I’ve installed media-libs/libpng, media-libs/tiff, and media-libs/libjpeg-turbo. I didn’t grab media-libs/jasper, as it’s not clear whether it is necessary. Removing and then installing ImageMagick anew after this (sudo emerge -cav media-gfx/imagemagick then sudo emerge -v media-gfx/imagemagick) didn’t change any of my delegates.

Advertisement

Answer

Short Answer

A number of these can be handled by setting the USE flags on the imagemagick package. Some use flags can be found by looking at the package’s entry on packages.gentoo.org. For a definitive list, check the ebuild on your machine or use tools such as equery.

Details

Portage, gentoo’s package manager, is actually just a list of steps needed to build a package from source. USE flags allow you to customize that process. In this case, it changes which packages are built as dependencies.

Steps

One way to set the USE flags is to create a file in /etc/portage/package.use and write the package name on it’s own line followed by all the use flag you would like to set. (eg. =media-gfx/imagemagick-7.0.8.8 png would set the png flag for version 7.0.8.8.

Once the USE flags are set, re-emerge the package to build with the new settings (eg. emerge --ask --verbose =media-gfx/imagemagick-7.0.8.8)

For more details on USE flags, read https://wiki.gentoo.org/wiki/USE_flag

User contributions licensed under: CC BY-SA
2 People found this is helpful
Advertisement