Tested on Laravel Forge provisioned server with Ubuntu 22, PHP 8.3 and 8.4
php -r 'print_r(Imagick::getVersion());'
php8.3 -r 'print_r(Imagick::getVersion());'
php8.4 -r 'print_r(Imagick::getVersion());'
convert --version
magick --version
sudo apt remove "*imagemagick*" --purge -y && sudo apt autoremove --purge -y
sudo bash -c "t=\$(mktemp) && wget 'https://dist.1-2.dev/imei.sh' -qO \"\$t\" && bash \"\$t\" && rm \"\$t\""
magick --version
which phpize8.3
which phpize8.4
which php-config8.3
which php-config8.4
git clone https://github.com/Imagick/imagick
cd imagick
phpize8.3
./configure --with-php-config=/usr/bin/php-config8.3
make
sudo make install
phpize8.4
./configure --with-php-config=/usr/bin/php-config8.4
make
sudo make install
make clean
make distclean
cd ..
rm -rf imagick
Check if you already have an imagick.ini
, if not, create it in the right directory (which can be checked with e.g. php8.3 --ini
)
cat /etc/php/8.3/mods-available/imagick.ini
ls /etc/php/8.3/mods-available/
sudo bash -c 'echo "extension=imagick.so" > /etc/php/8.3/mods-available/imagick.ini'
cat /etc/php/8.4/mods-available/imagick.ini
ls /etc/php/8.4/mods-available/
sudo bash -c 'echo "extension=imagick.so" > /etc/php/8.4/mods-available/imagick.ini'
cat /etc/php/8.3/cli/conf.d/imagick.ini
ls /etc/php/8.3/cli/conf.d/
sudo bash -c 'echo "extension=imagick.so" > /etc/php/8.3/cli/conf.d/imagick.ini'
cat /etc/php/8.3/fpm/conf.d/imagick.ini
ls /etc/php/8.3/fpm/conf.d/
sudo bash -c 'echo "extension=imagick.so" > /etc/php/8.3/fpm/conf.d/imagick.ini'
cat /etc/php/8.4/cli/conf.d/imagick.ini
ls /etc/php/8.4/cli/conf.d/
sudo bash -c 'echo "extension=imagick.so" > /etc/php/8.4/cli/conf.d/imagick.ini'
cat /etc/php/8.4/fpm/conf.d/imagick.ini
ls /etc/php/8.4/fpm/conf.d/
sudo bash -c 'echo "extension=imagick.so" > /etc/php/8.4/fpm/conf.d/imagick.ini'
php -r 'print_r(Imagick::getVersion());'
php8.3 -r 'print_r(Imagick::getVersion());'
php8.4 -r 'print_r(Imagick::getVersion());'