Ubuntu 20.04下curl出现curl_url_set符号查找错误的技术求助
解决Ubuntu 20.04中curl的undefined symbol错误
这个错误源于系统内多版本curl/libcurl冲突,导致curl二进制文件与依赖的动态库版本不匹配,以下是具体解决步骤:
1. 排查冲突根源
- 查看当前调用的curl路径:
which curl - 检查curl依赖的动态库:
如果输出里libcurl.so的路径是ldd $(which curl)/usr/local/lib而非系统默认的/usr/lib/x86_64-linux-gnu,说明是自定义安装的curl和系统版本产生了冲突。
2. 清理自定义安装的curl(若存在)
- 若之前手动编译安装过curl,进入源码目录执行卸载:
sudo make uninstall - 删除/usr/local/lib下的libcurl相关文件:
sudo rm -f /usr/local/lib/libcurl*
3. 重装系统官方curl
- 彻底卸载现有curl及依赖库:
sudo apt-get purge --auto-remove curl libcurl4 - 重新安装官方版本:
sudo apt-get install curl libcurl4
4. 验证修复
- 查看curl版本确认恢复正常:
curl --version - 再次执行原命令测试:
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
注意:
curl_url_set是libcurl的内部API函数,并非可执行命令,执行它提示command not found是正常现象,无需处理。
内容的提问来源于stack exchange,提问作者manish singh
相关产品推荐
相关产品推荐

