15 hours ago15 hr This is a tutorial for PHP 8.5 installation in CWP PHP SwitcherI've switched to direct compiler environment variables that pass flags straight to gcc, g++, and ld - eliminating pkg-config dependency that was failing across servers.Old Method (Unstable):pkg-config → generates flags → gcc/g++/ld ↓ Breaks when pkg-config .pc files missing/corrupted/version mismatchNew Method (Stable):CFLAGS/CXXFLAGS/LDFLAGS → gcc/g++/ld directly ↓ No pkg-config intermediary = consistent builds everywhereInstall dependencies :# For el9 only : dnf config-manager --set-enabled crb # run these for el8 and el9 dnf groupinstall "Development Tools" dnf install glibc-devel elfutils-libelf-devel dnf install git make gcc gcc-c++ binutils glibc-devel autoconf libtool bison re2c automake libxml2-devel openssl-devel sqlite-devel bzip2-devel libcurl-devel libpng-devel libavif-devel libwebp-devel libjpeg-devel libXpm-devel freetype-devel gmp-devel libicu-devel openldap-devel oniguruma-devel libargon2-devel libtidy-devel libxslt-devel Build PHP 8.5 switcher :rm -rf /usr/local/php-85 mkdir -p /usr/local/php-85 cd /usr/local/php-85 wget http://php.net/distributions/php-8.5.0.tar.gz tar zxvf php-8.5.0.tar.gz cd php-8.5.0 ./configure --with-config-file-path=/usr/local/php --enable-cgi --with-config-file-scan-dir=/usr/local/php/php.d --with-zlib=/usr --enable-mbstring --with-zip --enable-bcmath --enable-pcntl --enable-ftp --enable-exif --enable-calendar --enable-sysvmsg --enable-sysvsem --enable-sysvshm --with-tidy --with-curl --with-iconv --with-gmp --enable-gd --with-avif --with-jpeg --with-freetype --enable-gd-jis-conv --with-webp --with-xpm --with-openssl --with-pdo-mysql=mysqlnd --with-gettext=/usr --with-bz2=/usr --with-mysqli --enable-soap --enable-phar --with-xsl --enable-posix --enable-sockets --with-external-pcre --with-libdir=lib64 --with-mysql-sock=/var/lib/mysql/mysql.sock --enable-intl --with-password-argon2 --enable-litespeed --with-ldap=/usr --with-ldap-sasl=/usr export CFLAGS="-O2 -fPIE -DPIC" export CXXFLAGS="-O2 -fPIE -DPIC" export LDFLAGS="-pie -Wl,--as-needed" make -j$(nproc) make installAfter that, PHP 8.5 will be installed. You can check via the php -v command :[root@alma]# php -v PHP 8.5.0 (cli) (built: Dec 3 2025 01:59:52) (NTS) Copyright (c) The PHP Group Zend Engine v4.5.0, Copyright (c) Zend Technologies with Zend OPcache v8.5.0, Copyright (c), by Zend Technologies
Create an account or sign in to comment