小樱 发表于 2024/12/25 02:18

linux centos php8.0编译报错libxml-2.0 2.9.0,libcurl 7.29.0

linux centos php8.0编译报错libxml-2.0 2.9.0,libcurl 7.29.0

系统自带的版本为
libxml2-devel-2.7.6-21.el6_8.1.x86_64

卸载系统自带的v2.7.6版本
yum -y remove libxml2-devel

安装v2.9.12版本,发现编译安装最新版报错python版本不符,陆续依次版本降级改成v2.9.0正常,甚至v2.9.1都编译不通过,好在刚好满足php8.0的版本要求
wget http://xmlsoft.org/sources/libxml2-2.9.0.tar.gz
tar -zxvf libxml2-2.9.0.tar.gz
cd libxml2-2.9.0
./configure
make -j 4
make install
rm -rf /usr/bin/xml2-config.OFF
mv /usr/bin/xml2-config /usr/bin/xml2-config.OFF
ln -s /usr/local/lib/pkgconfig/libxml-2.0.pc /usr/lib64/pkgconfig/libxml-2.0.pc
ln -s /usr/local/bin/xml2-config /usr/bin/xml2-config
ldconfig -v

检查版本
xml2-config --version
2.9.0

第二个报错是libcurl
Requested 'libcurl >= 7.29.0' but version of libcurl is 7.19.7

系统自带的版本为
libcurl-devel-7.19.7-54.el6_10.x86_64

卸载系统自带的v7.19.7版本
yum -y remove libcurl-devel

v7.76.0是最后一个能正常方式编译的版本,不过会导致yum命令烂掉,暂时没找到修复方法,请不要在生产环境上这样安装libcurl(v7.76.1在旧版openssl上编译报错)
wget https://curl.se/download/curl-7.76.0.tar.bz2
tar xjf curl-7.76.0.tar.bz2
cd curl-7.76.0
./configure
make -j 4
make install
ln -s /usr/local/lib/pkgconfig/libcurl.pc /usr/lib64/pkgconfig/libcurl.pc
ldconfig -v

检查版本
curl --version
curl 7.76.0 (x86_64-pc-linux-gnu) libcurl/7.76.0 OpenSSL/1.1.1k zlib/1.2.3
Release-Date: 2021-03-31
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL TLS-SRP UnixSockets

nimeilai 发表于 2024/12/25 21:02

{:105:}转转
页: [1]
查看完整版本: linux centos php8.0编译报错libxml-2.0 2.9.0,libcurl 7.29.0