参考版本
https://www.24kplus.com/linux/400.html
却的依赖,然后安装:
yum install sqlite-devel
# centos8 安装 oniguruma ,yum 不行。
yum install oniguruma
yum 不行,就编译安装个哈。看这里
https://blog.vini123.com/379
configure 后会出警告如下:
php 7.4 --enable-gd 代替 --with-gd
configure: WARNING: unrecognized options: --with-freetype-dir, --with-libxml-dir, --with-pcre-regex, --with-png-dir, --with-jpeg-dir, --enable-libxml, --enable-zip, --enable-gd
不管它,安装吧。
最后:
Wrote PEAR system config file at: /alidata/service/php/etc/pear.conf
You may want to add: /alidata/service/php/lib/php to your php.ini include_path
/usr/local/src/php/php-7.4.4/build/shtool install -c ext/phar/phar.phar /alidata/service/php/bin
ln -s -f phar.phar /alidata/service/php/bin/phar
Installing PDO headers: /alidata/service/php/include/php/ext/pdo/
如果之前没安装 gd库,则需要安装
https://www.php.net/manual/zh/image.installation.php
安装 gd jpeg:
cd /usr/local/src/php
wget http://www.ijg.org/files/jpegsrc.v9c.tar.gz
tar -xzvf jpegsrc.v9c.tar.gz
# 我们安装到 /usr/local/lib/jpeg 目录
./configure --prefix=/usr/local/lib/jpeg --enable-shared --enable-static
make && make install
再 安装 freetype2
git clone https://github.com/aseprite/freetype2.git
cd freetype2
../autogen.sh
./configure --prefix=/usr/local/lib/freetype
make && make install
# 查看之前的,然后接上现在的,继续编译安装,然后重启
php -i |grep configure
./configure … --with-jpeg-dir=/usr/local/lib/jpeg --with-freetype-dir=/usr/local/lib/freetype
然后,最终的 configure。
./configure --prefix=/alidata/service/php --with-config-file-path=/alidata/service/php/etc --with-config-file-scan-dir=/alidata/service/php/etc/php.d --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-mysqli --with-openssl --with-external-pcre --with-pdo-mysql --with-pdo-sqlite --with-pear --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-bcmath --with-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --with-zip --enable-fpm --enable-gd --with-jpeg=/usr/local/lib/jpeg --with-freetype=/usr/local/lib/freetype
发现有报错,libzip 木有。那就安装吧。
wget https://libzip.org/download/libzip-1.7.3.tar.gz
tar -xzvf libzip-1.7.3.tar.gz
cd libzip-1.7.3
mkdir build
cd build
cmake ..
make && make install
whereis libzip
出现结果,ok
# 进入到 php 文件目录
cd php
export PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig/"
#上面命令的作用就是告诉configure程序,去/usr/local/lib64 目录下找库文件,这样他就能找到libzip.so
此时,你继续./configure将会很顺利的看到
再进行 configure 出现 thanks 时才表示各种都准备好了。如果没有,还得继续处理问题。 然后 make && make install
参考
https://segmentfault.com/q/1010000022601109
https://www.php.net/manual/zh/migration74.other-changes.php#migration74.other-changes.pkg-config