Photo by Ben Griffiths on Unsplash
Lỗi cài đặt Docker Imagick
RUN install-php-extensions imagick
Thông báo lỗi
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
Giải pháp
Khi cài đặt Imagick, hãy chỉ định đúng phiên bản master 28f27044e435a2b203e32675e942eb8de620ee58
# https://github.com/Imagick/imagick/commits/master/
# RUN install-php-extensions imagick/imagick@master
RUN install-php-extensions imagick/imagick@28f27044e435a2b203e32675e942eb8de620ee58
Phiên bản master hiện tại đang hoạt động bình thường, nhưng để tránh rủi ro master thay đổi bất cứ lúc nào và có khả năng làm hỏng môi trường production, hãy chỉ định mã commit của master hiện tại là 28f27044e435a2b203e32675e942eb8de620ee58.
Số phiên bản Imagick: 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