On 9/28/20 12:39 AM, Ryan Schmidt wrote:

On Sep 27, 2020, at 18:20, Uli Wienands wrote:

Being curious, and just having received my first .HEIC image ever (form a guy with 
an iPhone), I upgraded ImageMagic to the present version (worked) and then tried 
it: It failed. Here are the call & the error message:

macbook-pro:Pictures uli$ convert IMG_3160.HEIC img_3160.png
convert: unable to load module 
`/opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.la': file not found 
@ error/module.c/OpenModule/1315.
convert: no decode delegate for this image format `HEIC' @ 
error/constitute.c/ReadImage/566.
convert: no images defined `img_3160.png' @ 
error/convert.c/ConvertImageCommand/3226.

The weird thing is that 
/opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.la actually exists, 
and so are the four related libraries in /opt/local/bin: 
/opt/local/lib/libheif.1.dylib /opt/local/lib/libheif.a    
/opt/local/lib/libheif.dylib /opt/local/lib/libheif.la

So, what could be amiss?
Not sure! I tried converting some heic images now and it worked fine for me on 
macOS 10.13.6.

What's the contents of 
/opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.la?

Does /opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.so also exist? 
What's the output of:

otool -L /opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.so


What OS version are you on? You mentioned /opt/local/lib/libheif.la exists. The default 
behavior for MacPorts is to delete .la files* on OS X 10.9 and later. If you are on 10.8 
or earlier, maybe there is a problem specific to older OS versions that we need to 
investigate. The only reason why you should have /opt/local/lib/libheif.la if you're on 
10.9 or later is if you edited macports.conf and set "delete_la_files no".


*ImageMagick is an exception. It needs the .la files of its modules for proper 
operation so they will not be deleted for that port on any OS version.

Hmm... I tried this:
macbook-pro:Pictures uli$ ar -t /opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.la ar: /opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.la: Inappropriate file type or format

Did I do it wrong? it's a long time since I wrote programs...

macbook-pro:Pictures uli$ otool -L /opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.so
/opt/local/lib/ImageMagick-6.9.11/modules-Q16/coders/heic.so:
/opt/local/lib/libMagickCore-6.Q16.6.dylib (compatibility version 7.0.0, current version 7.0.0) /opt/local/lib/liblcms2.2.dylib (compatibility version 3.0.0, current version 3.8.0) /opt/local/lib/libfftw3.3.dylib (compatibility version 9.0.0, current version 9.8.0) /opt/local/lib/libxml2.2.dylib (compatibility version 12.0.0, current version 12.10.0) /opt/local/lib/libfontconfig.1.dylib (compatibility version 14.0.0, current version 14.0.0) /opt/local/lib/libfreetype.6.dylib (compatibility version 24.0.0, current version 24.1.0) /opt/local/lib/libXext.6.dylib (compatibility version 11.0.0, current version 11.0.0) /opt/local/lib/libSM.6.dylib (compatibility version 7.0.0, current version 7.1.0) /opt/local/lib/libICE.6.dylib (compatibility version 10.0.0, current version 10.0.0) /opt/local/lib/libX11.6.dylib (compatibility version 10.0.0, current version 10.0.0) /opt/local/lib/libXt.6.dylib (compatibility version 7.0.0, current version 7.0.0) /opt/local/lib/liblzma.5.dylib (compatibility version 8.0.0, current version 8.5.0) /opt/local/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.8) /opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11) /opt/local/lib/libltdl.7.dylib (compatibility version 11.0.0, current version 11.1.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /opt/local/lib/libheif.1.dylib (compatibility version 8.0.0, current version 8.2.0)

And I am on OS X 10.6.8 on this machine; forgot to say that upfront.

So maybe I have to go back to the .la library & see what is wrong there.

Reply via email to