Comments (6)
Hi.
Just add these libraries to imagemagick_optional_dependencies
list:
- libde265-dev
- libheif-dev
And a configuration option for HEIC support: --with-heic=yes
.
So, the role will look like this:
- role: ansible-role-imagemagick
imagemagick_configure_options: "--with-modules --enable-shared --disable-static --without-magick-plus-plus --with-ltdl=yes --without-x --with-heic=yes"
imagemagick_optional_dependencies:
- libdjvulibre-dev
- libopenexr-dev
- liblcms2-2
- libwmf-dev
- libwebp-dev
- libraw-dev
- libfftw3-dev
- liblqr-1-0-dev
- libpango1.0-dev
- libltdl-dev
- libde265-dev
- libheif-dev
$ identify -version
Version: ImageMagick 7.0.7-39 Q16 x86_64 2019-11-17 https://www.imagemagick.org
Copyright: © 1999-2018 ImageMagick Studio LLC
License: https://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenMP
Delegates (built-in): bzlib djvu fftw fontconfig freetype heic jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png raw tiff webp wmf xml zlib
from ansible-role-imagemagick.
@merifri thanks for the quick reply!
Your suggested settings for the role failed with this exception:
TASK [ansible-role-imagemagick : build] ****************************************************
fatal: [STAGING1]: FAILED! => {"changed": true, "cmd": ["make", "-j2"], "delta": "0:01:02.488616", "end": "2019-11-17 21:07:23.291146", "msg": "non-zero return code", "rc": 2, "start": "2019-11-17 21:06:20.802530", "stderr": "coders/heic.c: In function ‘ReadHEICColorProfile’:\ncoders/heic.c:143:5: warning: unused variable ‘length’ [-Wunused-variable]\n length;\n ^~~~~~\ncoders/heic.c: In function ‘ReadHEICImage’:\ncoders/heic.c:454:9: warning: implicit declaration of function ‘heif_context_read_from_memory_without_copy’; did you mean ‘heif_context_read_from_memory’? [-Wimplicit-function-declaration]\n error=heif_context_read_from_memory_without_copy(heif_context,file_data,\n ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n heif_context_read_from_memory\ncoders/heic.c:454:8: error: incompatible types when assigning to type ‘struct heif_error’ from type ‘int’\n error=heif_context_read_from_memory_without_copy(heif_context,file_data,\n ^\nAt top level:\ncoders/heic.c:94:3: warning: ‘xmp_namespace’ defined but not used [-Wunused-const-variable=]\n xmp_namespace[] = \"http://ns.adobe.com/xap/1.0/ \";\n ^~~~~~~~~~~~~\nmake[1]: *** [coders/heic_la-heic.lo] Error 1\nmake[1]: *** Waiting for unfinished jobs....\nmake: *** [all] Error 2", "stderr_lines": ["coders/heic.c: In function ‘ReadHEICColorProfile’:", "coders/heic.c:143:5: warning: unused variable ‘length’ [-Wunused-variable]", " length;", " ^~~~~~", "coders/heic.c: In function ‘ReadHEICImage’:", "coders/heic.c:454:9: warning: implicit declaration of function ‘heif_context_read_from_memory_without_copy’; did you mean ‘heif_context_read_from_memory’? [-Wimplicit-function-declaration]", " error=heif_context_read_from_memory_without_copy(heif_context,file_data,", " ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~", " heif_context_read_from_memory", "coders/heic.c:454:8: error: incompatible types when assigning to type ‘struct heif_error’ from type ‘int’", " error=heif_context_read_from_memory_without_copy(heif_context,file_data,", " ^", "At top level:", "coders/heic.c:94:3: warning: ‘xmp_namespace’ defined but not used [-Wunused-const-variable=]", " xmp_namespace[] = \"http://ns.adobe.com/xap/1.0/ \";", " ^~~~~~~~~~~~~", "make[1]: *** [coders/heic_la-heic.lo] Error 1", "make[1]: *** Waiting for unfinished jobs....", "make: *** [all] Error 2"], "stdout": "make all-am\nmake[1]: Entering directory '/usr/local/src/ImageMagick-7.0.9-2'\ncp -f MagickCore/ImageMagick.pc MagickCore/ImageMagick-7.Q16HDRI.pc\ncp -f MagickCore/MagickCore.pc MagickCore/MagickCore-7.Q16HDRI.pc\ncp -f MagickWand/MagickWand.pc MagickWand/MagickWand-7.Q16HDRI.pc\n CC utilities/magick.o\n CC MagickCore/libMagickCore_7_Q16HDRI_la-accelerate.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-animate.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-annotate.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-artifact.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-attribute.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-blob.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-cache.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-cache-view.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-channel.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-cipher.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-client.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-coder.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-color.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-colormap.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-colorspace.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-compare.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-composite.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-compress.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-configure.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-constitute.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-decorate.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-delegate.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-deprecate.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-display.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-distort.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-distribute-cache.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-draw.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-effect.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-enhance.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-exception.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-feature.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-fourier.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-fx.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-gem.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-geometry.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-histogram.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-identify.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-image.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-image-view.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-layer.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-linked-list.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-list.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-locale.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-log.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-magic.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-magick.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-matrix.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-memory.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-mime.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-module.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-monitor.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-montage.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-morphology.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-opencl.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-option.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-paint.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-pixel.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-policy.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-prepress.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-property.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-profile.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-quantize.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-quantum.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-quantum-export.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-quantum-import.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-random.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-registry.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-resample.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-resize.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-resource.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-segment.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-semaphore.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-shear.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-signature.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-splay-tree.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-static.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-statistic.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-stream.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-string.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-thread.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-timer.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-token.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-transform.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-threshold.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-type.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-utility.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-version.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-vision.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-widget.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-xml-tree.lo\n CC MagickCore/libMagickCore_7_Q16HDRI_la-xwindow.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-animate.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-compare.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-composite.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-conjure.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-convert.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-deprecate.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-display.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-drawing-wand.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-identify.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-import.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-cli.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-image.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-property.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-wand.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-mogrify.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-montage.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-operation.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-pixel-iterator.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-pixel-wand.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-script-token.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-stream.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-wand.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-wandcli.lo\n CC MagickWand/libMagickWand_7_Q16HDRI_la-wand-view.lo\n CC coders/aai_la-aai.lo\n CC coders/art_la-art.lo\n CC coders/avs_la-avs.lo\n CC coders/bgr_la-bgr.lo\n CC coders/bmp_la-bmp.lo\n CC coders/braille_la-braille.lo\n CC coders/cals_la-cals.lo\n CC coders/caption_la-caption.lo\n CC coders/cin_la-cin.lo\n CC coders/cip_la-cip.lo\n CC coders/clip_la-clip.lo\n CC coders/cmyk_la-cmyk.lo\n CC coders/cube_la-cube.lo\n CC coders/cut_la-cut.lo\n CC coders/dcm_la-dcm.lo\n CC coders/dds_la-dds.lo\n CC coders/debug_la-debug.lo\n CC coders/dib_la-dib.lo\n CC coders/dng_la-dng.lo\n CC coders/dot_la-dot.lo\n CC coders/dpx_la-dpx.lo\n CC coders/fax_la-fax.lo\n CC coders/fits_la-fits.lo\n CC coders/gif_la-gif.lo\n CC coders/gradient_la-gradient.lo\n CC coders/gray_la-gray.lo\n CC coders/hald_la-hald.lo\n CC coders/hdr_la-hdr.lo\n CC coders/histogram_la-histogram.lo\n CC coders/hrz_la-hrz.lo\n CC coders/html_la-html.lo\n CC coders/icon_la-icon.lo\n CC coders/info_la-info.lo\n CC coders/inline_la-inline.lo\n CC coders/ipl_la-ipl.lo\n CC coders/jnx_la-jnx.lo\n CC coders/json_la-json.lo\n CC coders/label_la-label.lo\n CC coders/mac_la-mac.lo\n CC coders/magick_la-magick.lo\n CC coders/map_la-map.lo\n CC coders/mask_la-mask.lo\n CC coders/mat_la-mat.lo\n CC coders/matte_la-matte.lo\n CC coders/meta_la-meta.lo\n CC coders/miff_la-miff.lo\n CC coders/mono_la-mono.lo\n CC coders/mpc_la-mpc.lo\n CC coders/mpeg_la-mpeg.lo\n CC coders/mpr_la-mpr.lo\n CC coders/msl_la-msl.lo\n CC coders/mtv_la-mtv.lo\n CC coders/mvg_la-mvg.lo\n CC coders/null_la-null.lo\n CC coders/otb_la-otb.lo\n CC coders/palm_la-palm.lo\n CC coders/pango_la-pango.lo\n CC coders/pattern_la-pattern.lo\n CC coders/pcd_la-pcd.lo\n CC coders/pcl_la-pcl.lo\n CC coders/pcx_la-pcx.lo\n CC coders/pdb_la-pdb.lo\n CC coders/pdf_la-pdf.lo\n CC coders/pes_la-pes.lo\n CC coders/pgx_la-pgx.lo\n CC coders/pict_la-pict.lo\n CC coders/pix_la-pix.lo\n CC coders/plasma_la-plasma.lo\n CC coders/pnm_la-pnm.lo\n CC coders/ps_la-ps.lo\n CC coders/ps2_la-ps2.lo\n CC coders/ps3_la-ps3.lo\n CC coders/psd_la-psd.lo\n CC coders/pwp_la-pwp.lo\n CC coders/raw_la-raw.lo\n CC coders/rgb_la-rgb.lo\n CC coders/rgf_la-rgf.lo\n CC coders/rla_la-rla.lo\n CC coders/rle_la-rle.lo\n CC coders/scr_la-scr.lo\n CC coders/sct_la-sct.lo\n CC coders/sfw_la-sfw.lo\n CC coders/sgi_la-sgi.lo\n CC coders/sixel_la-sixel.lo\n CC coders/stegano_la-stegano.lo\n CC coders/sun_la-sun.lo\n CC coders/svg_la-svg.lo\n CC coders/tga_la-tga.lo\n CC coders/thumbnail_la-thumbnail.lo\n CC coders/tile_la-tile.lo\n CC coders/tim_la-tim.lo\n CC coders/tim2_la-tim2.lo\n CC coders/ttf_la-ttf.lo\n CC coders/txt_la-txt.lo\n CC coders/uil_la-uil.lo\n CC coders/url_la-url.lo\n CC coders/uyvy_la-uyvy.lo\n CC coders/vicar_la-vicar.lo\n CC coders/vid_la-vid.lo\n CC coders/viff_la-viff.lo\n CC coders/vips_la-vips.lo\n CC coders/wbmp_la-wbmp.lo\n CC coders/wpg_la-wpg.lo\n CC coders/xbm_la-xbm.lo\n CC coders/xc_la-xc.lo\n CC coders/xcf_la-xcf.lo\n CC coders/xpm_la-xpm.lo\n CC coders/xps_la-xps.lo\n CC coders/xtrn_la-xtrn.lo\n CC coders/ycbcr_la-ycbcr.lo\n CC coders/yuv_la-yuv.lo\n CC coders/djvu_la-djvu.lo\n CC coders/exr_la-exr.lo\n CC coders/heic_la-heic.lo\n CC coders/jbig_la-jbig.lo\nMakefile:10379: recipe for target 'coders/heic_la-heic.lo' failed\nmake[1]: Leaving directory '/usr/local/src/ImageMagick-7.0.9-2'\nMakefile:5990: recipe for target 'all' failed", "stdout_lines": ["make all-am", "make[1]: Entering directory '/usr/local/src/ImageMagick-7.0.9-2'", "cp -f MagickCore/ImageMagick.pc MagickCore/ImageMagick-7.Q16HDRI.pc", "cp -f MagickCore/MagickCore.pc MagickCore/MagickCore-7.Q16HDRI.pc", "cp -f MagickWand/MagickWand.pc MagickWand/MagickWand-7.Q16HDRI.pc", " CC utilities/magick.o", " CC MagickCore/libMagickCore_7_Q16HDRI_la-accelerate.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-animate.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-annotate.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-artifact.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-attribute.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-blob.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-cache.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-cache-view.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-channel.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-cipher.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-client.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-coder.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-color.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-colormap.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-colorspace.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-compare.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-composite.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-compress.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-configure.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-constitute.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-decorate.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-delegate.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-deprecate.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-display.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-distort.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-distribute-cache.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-draw.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-effect.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-enhance.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-exception.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-feature.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-fourier.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-fx.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-gem.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-geometry.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-histogram.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-identify.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-image.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-image-view.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-layer.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-linked-list.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-list.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-locale.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-log.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-magic.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-magick.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-matrix.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-memory.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-mime.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-module.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-monitor.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-montage.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-morphology.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-opencl.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-option.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-paint.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-pixel.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-policy.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-prepress.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-property.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-profile.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-quantize.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-quantum.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-quantum-export.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-quantum-import.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-random.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-registry.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-resample.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-resize.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-resource.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-segment.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-semaphore.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-shear.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-signature.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-splay-tree.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-static.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-statistic.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-stream.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-string.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-thread.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-timer.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-token.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-transform.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-threshold.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-type.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-utility.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-version.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-vision.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-widget.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-xml-tree.lo", " CC MagickCore/libMagickCore_7_Q16HDRI_la-xwindow.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-animate.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-compare.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-composite.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-conjure.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-convert.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-deprecate.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-display.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-drawing-wand.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-identify.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-import.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-cli.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-image.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-property.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-magick-wand.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-mogrify.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-montage.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-operation.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-pixel-iterator.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-pixel-wand.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-script-token.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-stream.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-wand.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-wandcli.lo", " CC MagickWand/libMagickWand_7_Q16HDRI_la-wand-view.lo", " CC coders/aai_la-aai.lo", " CC coders/art_la-art.lo", " CC coders/avs_la-avs.lo", " CC coders/bgr_la-bgr.lo", " CC coders/bmp_la-bmp.lo", " CC coders/braille_la-braille.lo", " CC coders/cals_la-cals.lo", " CC coders/caption_la-caption.lo", " CC coders/cin_la-cin.lo", " CC coders/cip_la-cip.lo", " CC coders/clip_la-clip.lo", " CC coders/cmyk_la-cmyk.lo", " CC coders/cube_la-cube.lo", " CC coders/cut_la-cut.lo", " CC coders/dcm_la-dcm.lo", " CC coders/dds_la-dds.lo", " CC coders/debug_la-debug.lo", " CC coders/dib_la-dib.lo", " CC coders/dng_la-dng.lo", " CC coders/dot_la-dot.lo", " CC coders/dpx_la-dpx.lo", " CC coders/fax_la-fax.lo", " CC coders/fits_la-fits.lo", " CC coders/gif_la-gif.lo", " CC coders/gradient_la-gradient.lo", " CC coders/gray_la-gray.lo", " CC coders/hald_la-hald.lo", " CC coders/hdr_la-hdr.lo", " CC coders/histogram_la-histogram.lo", " CC coders/hrz_la-hrz.lo", " CC coders/html_la-html.lo", " CC coders/icon_la-icon.lo", " CC coders/info_la-info.lo", " CC coders/inline_la-inline.lo", " CC coders/ipl_la-ipl.lo", " CC coders/jnx_la-jnx.lo", " CC coders/json_la-json.lo", " CC coders/label_la-label.lo", " CC coders/mac_la-mac.lo", " CC coders/magick_la-magick.lo", " CC coders/map_la-map.lo", " CC coders/mask_la-mask.lo", " CC coders/mat_la-mat.lo", " CC coders/matte_la-matte.lo", " CC coders/meta_la-meta.lo", " CC coders/miff_la-miff.lo", " CC coders/mono_la-mono.lo", " CC coders/mpc_la-mpc.lo", " CC coders/mpeg_la-mpeg.lo", " CC coders/mpr_la-mpr.lo", " CC coders/msl_la-msl.lo", " CC coders/mtv_la-mtv.lo", " CC coders/mvg_la-mvg.lo", " CC coders/null_la-null.lo", " CC coders/otb_la-otb.lo", " CC coders/palm_la-palm.lo", " CC coders/pango_la-pango.lo", " CC coders/pattern_la-pattern.lo", " CC coders/pcd_la-pcd.lo", " CC coders/pcl_la-pcl.lo", " CC coders/pcx_la-pcx.lo", " CC coders/pdb_la-pdb.lo", " CC coders/pdf_la-pdf.lo", " CC coders/pes_la-pes.lo", " CC coders/pgx_la-pgx.lo", " CC coders/pict_la-pict.lo", " CC coders/pix_la-pix.lo", " CC coders/plasma_la-plasma.lo", " CC coders/pnm_la-pnm.lo", " CC coders/ps_la-ps.lo", " CC coders/ps2_la-ps2.lo", " CC coders/ps3_la-ps3.lo", " CC coders/psd_la-psd.lo", " CC coders/pwp_la-pwp.lo", " CC coders/raw_la-raw.lo", " CC coders/rgb_la-rgb.lo", " CC coders/rgf_la-rgf.lo", " CC coders/rla_la-rla.lo", " CC coders/rle_la-rle.lo", " CC coders/scr_la-scr.lo", " CC coders/sct_la-sct.lo", " CC coders/sfw_la-sfw.lo", " CC coders/sgi_la-sgi.lo", " CC coders/sixel_la-sixel.lo", " CC coders/stegano_la-stegano.lo", " CC coders/sun_la-sun.lo", " CC coders/svg_la-svg.lo", " CC coders/tga_la-tga.lo", " CC coders/thumbnail_la-thumbnail.lo", " CC coders/tile_la-tile.lo", " CC coders/tim_la-tim.lo", " CC coders/tim2_la-tim2.lo", " CC coders/ttf_la-ttf.lo", " CC coders/txt_la-txt.lo", " CC coders/uil_la-uil.lo", " CC coders/url_la-url.lo", " CC coders/uyvy_la-uyvy.lo", " CC coders/vicar_la-vicar.lo", " CC coders/vid_la-vid.lo", " CC coders/viff_la-viff.lo", " CC coders/vips_la-vips.lo", " CC coders/wbmp_la-wbmp.lo", " CC coders/wpg_la-wpg.lo", " CC coders/xbm_la-xbm.lo", " CC coders/xc_la-xc.lo", " CC coders/xcf_la-xcf.lo", " CC coders/xpm_la-xpm.lo", " CC coders/xps_la-xps.lo", " CC coders/xtrn_la-xtrn.lo", " CC coders/ycbcr_la-ycbcr.lo", " CC coders/yuv_la-yuv.lo", " CC coders/djvu_la-djvu.lo", " CC coders/exr_la-exr.lo", " CC coders/heic_la-heic.lo", " CC coders/jbig_la-jbig.lo", "Makefile:10379: recipe for target 'coders/heic_la-heic.lo' failed", "make[1]: Leaving directory '/usr/local/src/ImageMagick-7.0.9-2'", "Makefile:5990: recipe for target 'all' failed"]}
from ansible-role-imagemagick.
@merifri From what I could gather from that error message, it seems that imagemagick will only compile with HEIC support if it has libheif
version >= 1.3.0
(source: ImageMagick/ImageMagick#1534 (comment))
On Ubuntu 18.04, without adding any extra PPAs, apt will install version 1.1.0-2
of libheif-dev
, and it's the newest version available to Bionic.
However, since you posted your identify -version
command, I think you somehow made it work.
from ansible-role-imagemagick.
Yes, ImageMagick 7.0.8+ does not compile with old libraries from the repository. You can install libde265(-dev) and libheif(-dev) from source.
Would it be possible to adapt this role to compile Imagemagick with HEIC support?
No, it is not possible. I think that in this case it would be better to create a new role to install the necessary dependencies.
However, since you posted your identify -version command, I think you somehow made it work.
I did not update imagemagick. Installed version: 7.0.7
from ansible-role-imagemagick.
@merifri I'll try to come up with this role by following that medium article I posted above. If I succeed, I'll post it here and maybe it can help others in the future.
from ansible-role-imagemagick.
Managed to do it.
I'm posting below so it can help anyone in the future. Feel free to comment.
- name: Check if imagemagick is installed
shell: "identify -version"
changed_when: false
failed_when: false
register: check_image_magick
- set_fact:
image_magick_is_installed: "{{ check_image_magick.stderr == '' }}"
- when: image_magick_is_installed
name: ImageMagick
debug:
msg: "ImageMagick is already installed"
- block:cache
# Source: https://medium.com/@eplt/5-minutes-to-install-imagemagick-with-heic-support-on-ubuntu-18-04-digitalocean-fe2d09dcef1
- name: ImageMagick
debug:
msg: Starting imagemagick install
- name: Replace apt sources
replace:
path: /etc/apt/sources.list
regexp: '^# deb-src '
replace: 'deb-src '
- name: Update apt and install packages
apt:
name: "{{ packages }}"
state: present
update_cache: yes
cache_valid_time: 0
vars:
packages:
- build-essential
- autoconf
- libtool
- name: Install build build dependencies
apt:
name: "{{ packages }}"
state: build-dep
cache_valid_time: 0
vars:
packages:
- imagemagick
- libmagickcore-dev
- libde265
- libheif
- name: Clone libde265 repo
git:
repo: 'https://github.com/strukturag/libde265.git'
dest: /usr/src/libde265
- name: "autogen libde265"
shell: "./autogen.sh"
args:
chdir: "/usr/src/libde265"
creates: "/usr/src/libde265/configure"
- name: "configure libde265"
shell: "./configure"
args:
chdir: "/usr/src/libde265"
creates: "/usr/src/libde265/Makefile"
- name: make and install
shell: make && make install
args:
chdir: "/usr/src/libde265"
- name: Clone libheif repo
git:
repo: 'https://github.com/strukturag/libheif.git'
dest: /usr/src/libheif
- name: "autogen libheif"
shell: "./autogen.sh"
args:
chdir: "/usr/src/libheif"
creates: "/usr/src/libheif/configure"
- name: "configure libheif"
shell: "./configure"
args:
chdir: "/usr/src/libheif"
creates: "/usr/src/libheif/Makefile"
- name: make and install
shell: make && make install
args:
chdir: "/usr/src/libheif"
- name: "find latest imagemagick patch version"
uri:
url: "{{ imagemagick_releases_url }}"
return_content: yes
register: imagemagick_releases_page
- name: "set vars: IM patch version"
set_fact:
imagemagick_patch_version: "{{ imagemagick_releases_page.content | regex_search('ImageMagick-'+imagemagick_version+'-[0-9]{1,3}.tar.xz') | regex_replace('^.*-(.*)\\.tar\\.xz','\\1') }}"
- name: "set vars: IM filename"
set_fact:
imagemagick_file: "ImageMagick-{{ imagemagick_version + '-' + imagemagick_patch_version }}"
- name: "get source"
get_url:
url: "{{ imagemagick_releases_url }}/{{ imagemagick_file }}.tar.xz"
dest: "{{ imagemagick_source_path }}/{{ imagemagick_file }}.tar.xz"
- name: "extract archive"
unarchive:
src: "{{ imagemagick_source_path }}/{{ imagemagick_file }}.tar.xz"
dest: "{{ imagemagick_source_path }}/"
copy: no
creates: "{{ imagemagick_source_path }}/{{ imagemagick_file }}"
- name: "autogen imagemagick"
shell: "./autogen.sh"
args:
chdir: "{{ imagemagick_source_path }}/{{ imagemagick_file }}"
creates: "{{ imagemagick_source_path }}/{{ imagemagick_file }}/configure"
- name: "configure"
shell: "./configure {{ imagemagick_configure_options }}"
args:
chdir: "{{ imagemagick_source_path }}/{{ imagemagick_file }}"
creates: "{{ imagemagick_source_path }}/{{ imagemagick_file }}/config.status"
- name: "build"
shell: "make -j{{ ansible_processor_cores|default(1) }}"
args:
chdir: "{{ imagemagick_source_path }}/{{ imagemagick_file }}"
creates: "{{ imagemagick_source_path }}/{{ imagemagick_file }}/utilites/.libs"
- name: "install"
shell: "make install"
args:
chdir: "{{ imagemagick_source_path }}/{{ imagemagick_file }}"
- name: 'ldconfig'
shell: 'ldconfig'
when: not image_magick_is_installed
from ansible-role-imagemagick.
Related Issues (3)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ansible-role-imagemagick.