deepin系统安装php8

一、deepin系统与php的版本

1.deepin系统的版本 --社区版(20.8)

安装PHP的基础扩展包

sudo apt-get -y install gcc g++ autoconf automake libtool cmake m4 bison re2c \
libwebp-dev libjpeg-dev libxpm-dev libzip-dev libxslt1-dev libmcrypt-dev libsqlite3-dev \
libcurl4-openssl-dev libssl-dev libfreetype6-dev libbz2-dev libonig-dev 
1. No package 'libpcre2-8' found 解决方案http://www.pcre.org/ --下载地址 https://master.dl.sourceforge.net/project/pcre/pcre2/10.34/pcre2-10.34.tar.bz2?viasf=1 --浏览器输入这个地址,就可以下载
tar xjvf pcre2-10.34.tar.bz2 
cd pcre2-10.34 

./configure --prefix=/usr/local/pcre2 \ --enable-pcre2-16 \ --enable-pcre2-32 \ --enable-jit \ --enable-jit-sealloc $ sudo make && sudo make install 

export PKG_CONFIG_PATH=/usr/local/pcre2/lib/pkgconfig/

SQLite版本问题

configure: error: Package requirements (sqlite3 > 3.7.4) were not met

下载解压编译安装 SQLite

curl -O https://www.sqlite.org/2024/sqlite-autoconf-3450100.tar.gz
tar zxcv sqlite-autoconf-3450100.tar.gz
cd sqlite-autoconf-3450100

./configure
make
sudo make install

编译php

cd php-8.3.3
php_dir=/etc/php/php8.3
./configure --prefix=$php_dir \
--with-config-file-path=$php_dir/etc/ \
--with-config-file-scan-dir=$php_dir/etc/conf.d/ \
--enable-inline-optimization \
--disable-rpath \
--enable-shared \
--enable-opcache \
--enable-fpm \
--with-mysqli \
--with-pdo-mysql \
--with-gettext \
--enable-mbstring \
--with-iconv \
--with-bz2 \
--with-mcrypt \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-SQLITE \
--enable-soap \
--with-libxml-dir \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--with-curl \
--with-zlib \
--enable-zip \
--with-gd \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir

make && make install

bin_src=/usr/sbin
sudo rm -f $bin_src/php
sudo rm -f $bin_src/php-cgi
sudo rm -f $bin_src/php-config
sudo rm -f $bin_src/phpize
sudo rm -f $bin_src/phar
sudo rm -f $bin_src/pear
sudo rm -f $bin_src/phpdbg
sudo rm -f $bin_src/php-fpm

php_dir=/etc/php/php8.3
sudo ln -s $php_dir/bin/php $bin_src/php
sudo ln -s $php_dir/bin/php-cgi $bin_src/php-cgi
sudo ln -s $php_dir/bin/php-config $bin_src/php-config
sudo ln -s $php_dir/bin/phpize $bin_src/phpize
sudo ln -s $php_dir/bin/phar $bin_src/phar
sudo ln -s $php_dir/bin/pear $bin_src/pear
sudo ln -s $php_dir/bin/phpdbg $bin_src/phpdbg
sudo ln -s $php_dir/sbin/php-fpm $bin_src/php-fpm

sudo cp php.ini-development $php_dir/etc/php-development.ini
sudo cp php.ini-production  $php_dir/etc/php-production.ini
sudo cp php.ini-production  $php_dir/etc/php.ini

xdebug3.3.1

curl -O https://xdebug.org/files/xdebug-3.3.1.tgz
tar zvxf xdebug-3.3.1
phpize
./configure --enable-xdebug
make && make install