Пакеты libheif
и libheif-dev
недоступны для Debian Stretch. Они доступны для Buster, но все еще находятся в стадии тестирования и официально не поддерживаются. В результате установка imagemagick
через apt
не обеспечит преобразование heic-файлов.
Если вы хотите преобразовать файлы .heic
в другой формат, такой как .jpeg
, вам потребуется скомпилировать imagemagick
из исходного кода. Во-первых, возьмите отсюда код для libheic
и скомпилируйте его со стандартными опциями:
https://github.com/strukturag/libheif/archive/v1.3.2.tar.gz
Вы можете скачать Imagemagick здесь:
https://github.com/ImageMagick/ImageMagick/archive/7.0.8-23.tar.gz
Для правильной компиляции мне пришлось установить следующие переменные:
export CFLAGS=-I/path/to/libheif/1.3.2/include
export LDFLAGS=-L/path/to/libheif/1.3.2/lib
export PKG_CONFIG_PATH=/path/to/libheif/1.3.2/lib/pkgconfig
Ранее я также добавил директории bin
и lib
для libheif
в мои соответствующие PATH
и LD_LIBRARY_PATH
, хотя это не сработало, поэтому я сделал вышеописанное.
Затем я запустил configure с этими параметрами:
./configure --prefix=/path/to/imagemagick --with-heic=yes
Затем Imagemagick будет компилироваться с поддержкой heic
.Впоследствии мне удалось без проблем преобразовать изображение.heic в.jpeg.
Эти сообщения генерируются элементом конфигурации ядра PCIE Advanced Error Reporting :CONFIG_PCIEAER
.
Если вы используете собственное ядро, отключите его в конфигурации ядра. В противном случае добавьте параметр загрузки noaer
в командную строку ядра, чтобы отключить AER без перекомпиляции ядра, и перезагрузите компьютер.
Немного погуглив, я нашел обсуждение, в котором упоминалось, что pcie_aspm=off
вариант загрузки ядра также может помочь. Но сначала попробуйте noaer
, так как он более специфичен, а pcie_aspm=off
может быть излишним, если noaer
достаточно.