Photo by Ben Griffiths on Unsplash
Docker Install Imagick Error
RUN install-php-extensions imagick
Error Message
22.24 Saved /tmp/pear/temp/imagick/ImagickPixel_arginfo.h
22.25 In /tmp/pear/temp/imagick/Imagick.stub.php:
22.25 Unterminated preprocessor conditions
22.26 make: *** [Makefile:196: /tmp/pear/temp/imagick/Imagick_arginfo.h] Error 1
22.26 ERROR: `make -j10 INSTALL_ROOT="/tmp/pear/temp/pear-build-defaultuserAdMKLn/install-imagick-3.7.0" install' failed
Solution
When installing Imagick, specify the correct version master 28f27044e435a2b203e32675e942eb8de620ee58
# https://github.com/Imagick/imagick/commits/master/
# RUN install-php-extensions imagick/imagick@master
RUN install-php-extensions imagick/imagick@28f27044e435a2b203e32675e942eb8de620ee58
The current master version works normally, but to avoid the risk of master changing at any time and potentially breaking the production environment, specify the current master version commit hash 28f27044e435a2b203e32675e942eb8de620ee58.
Imagick Version Number: https://github.com/Imagick/imagick/commits/master/
Reference
- GitHub - mlocati/docker-php-extension-installer: Easily install PHP extensions in Docker containers
- Install error “Unterminated preprocessor conditions” in php 8.3 · Issue #640 · Imagick/imagick · GitHub
- Transient Error when Building Imagick in php 8.3.x on amd64 on alpine · Issue #643 · Imagick/imagick · GitHub
- ImageMagick not installed · Issue #820 · dunglas/frankenphp · GitHub