Centos编译升级libcurl

Centos编译升级libcurl

‌下载最新版源码包

访问curl官网获取最新版本(如8.12.1):

bash 复制代码
wget https://curl.se/download/curl-8.12.1.tar.gz
tar -zxvf curl-8.12.1.tar.gz && cd curl-8.12.1

安装编译依赖

bash 复制代码
yum groupinstall 'Development Tools' -y
yum install openssl-devel libnghttp2-devel -y

配置编译选项

bash 复制代码
./configure --prefix=/usr/local/curl --with-brotli --with-openssl

若需禁用特定功能(如LDAP),可添加--disable-ldap等参数‌

如果报错:

configure: error: libpsl libs and/or directories were not found where specified!

通过 EPEL 仓库安装

bash 复制代码
# 安装 EPEL 仓库
yum install epel-release -y

# 更新仓库缓存
yum clean all && yum makecache

# 安装 libpsl-devel
yum install libpsl-devel -y

手动源码编译安装

bash 复制代码
# 安装编译依赖
yum install wget gcc make pkg-config -y

# 下载 libpsl 源码
wget https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz
# 解压并编译
tar -zxvf libpsl-0.21.5.tar.gz
cd libpsl-0.21.5
./configure
make
sudo make install

# 更新动态库缓存
sudo ldconfig

如果报错:

configure: error: BROTLI libs and/or directories were not found where specified!

安装Brotli 开发库

bash 复制代码
yum install brotli-devel -y

如果报错:

configure: error: libpsl libs and/or directories were not found where specified!

方法一:安装 libpsl-devel 依赖

通过 EPEL 仓库安装
bash 复制代码
# 确保已启用 EPEL 仓库
yum install epel-release -y

# 安装 libpsl-devel
yum install libpsl-devel -y
重新运行 configure
bash 复制代码
./configure --prefix=/usr/local/curl --with-brotli --with-openssl

方法二:禁用 PSL 支持

如果不需要 ‌Public Suffix List‌ 功能(例如域名后缀解析),可在配置时直接禁用:

bash 复制代码
./configure --prefix=/usr/local/curl --with-brotli --with-openssl

‌编译并安装

bash 复制代码
make && make install

替换系统旧版本

bash 复制代码
mv /usr/bin/curl /usr/bin/curl.bak  # 备份旧版本
cp /usr/local/curl/bin/curl /usr/bin/curl
echo "/usr/local/curl/lib" > /etc/ld.so.conf.d/curl.conf
ldconfig  # 更新动态库缓存
相关推荐
Json____2 分钟前
docker搭建部署 onlyoffice 实现前端集成在线解析文档解决方案
运维·docker·容器·在线文档·onlyoffice·文档预览·在线文档解析
basketball6165 分钟前
Linux C 进程间高级通信
linux·运维·服务器
是小恐龙啊11 分钟前
【测试报告】博客系统(Java+Selenium+Jmeter自动化测试)
运维·服务器
kyle~18 分钟前
Windows---动态链接库Dynamic Link Library(.dll)
运维·windows·操作系统·运维开发·开发部署
水痕0140 分钟前
nginx一个域名下部署多套前端项目
运维·前端·nginx
##echo2 小时前
嵌入式Linux裸机开发笔记9(IMX6ULL)GPIO 中断实验(1)
linux·c语言·笔记·单片机·嵌入式硬件
Reggie_L2 小时前
RabbiteMQ安装-ubuntu
linux·ubuntu·ruby
AIGC_北苏2 小时前
让UV管理一切!!!
linux·人工智能·uv
YCY^v^4 小时前
centos 7 开启80,443端口,怎么弄?
linux·运维·centos
北南京海4 小时前
[Linux]进程地址空间
linux·运维·服务器