- Edited
STEP 1: Install Dependencies
sudo apt update
sudo apt install -y build-essential pkg-config checkinstall git \
libx11-dev libxext-dev zlib1g-dev libpng-dev libjpeg-dev \
libtiff-dev libwebp-dev libheif-dev libde265-dev libavif-dev \
libraw-dev liblcms2-dev libfftw3-dev libxml2-dev libfreetype6-dev \
libonig-dev libcurl4-openssl-dev libzip-dev libssl-dev \
libsqlite3-dev libxml2-dev libreadline-dev libxslt1-dev \
libmcrypt-dev libjpeg-dev libwebp-dev libxpm-dev \
libmagickwand-dev libmagickcore-dev \
libsodium-dev
STEP 2: Compile & Install ImageMagick 7
cd /usr/local/src
sudo git clone https://github.com/ImageMagick/ImageMagick.git
cd ImageMagick
sudo ./configure --with-modules --enable-shared --with-webp --with-heic --with-avif
sudo make -j$(nproc)
sudo make install
sudo ldconfig
Verify the setup
magick -version
Should show ImageMagick 7 and AVIF support.
STEP 3: Compile PHP 8.3 with AVIF-enabled GD & Imagick
export PHP_PREFIX="/www/server/php/83" && \
cd $PHP_PREFIX/src && \
./configure \
--prefix=$PHP_PREFIX \
--with-config-file-path=$PHP_PREFIX/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir \
--with-freetype \
--with-jpeg \
--with-webp \
--with-avif \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-mbstring \
--enable-intl \
--enable-ftp \
--enable-gd \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--with-gettext \
--disable-fileinfo \
--enable-opcache \
--with-sodium=/usr/local/libsodium \
--with-pear && \
make -j$(nproc) && \
make install && \
export PATH=$PHP_PREFIX/bin:$PATH && \
export PHP_CONFIG="$PHP_PREFIX/bin/php-config" && \
export PHPIZE="$PHP_PREFIX/bin/phpize" && \
$PHP_PREFIX/bin/pecl uninstall imagick -r || true && \
$PHPIZE && \
$PHP_PREFIX/bin/pecl install imagick && \
grep -q "extension=imagick.so" $PHP_PREFIX/etc/php.ini || echo "extension=imagick.so" >> $PHP_PREFIX/etc/php.ini && \
grep -q "extension=imagick.so" $PHP_PREFIX/etc/php-cli.ini || echo "extension=imagick.so" >> $PHP_PREFIX/etc/php-cli.ini && \
/etc/init.d/php-fpm-83 restart