You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04中`GLIBCXX_3.4.30'未找到问题的解决方法

解决Ubuntu下.NET 6加载libhostfxr.so时GLIBCXX_3.4.30缺失问题

问题根源

Anaconda环境的libstdc++.so.6版本低于.NET 6要求的GLIBCXX_3.4.30,且Anaconda的库加载优先级高于系统默认库,导致dotnet进程错误加载了旧版本的库。

解决方案

1. 临时应急方案(单次生效)

运行dotnet命令时,强制指定优先加载系统的高版本libstdc++:

LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 dotnet --version

编译代码时同理,在编译命令前加上上述前缀即可。

2. 永久修复(当前用户全局生效)

调整库加载路径优先级,让系统库优先于Anaconda库:

  • 打开用户shell配置文件(以bash为例):
    nano ~/.bashrc
    
  • 在文件末尾添加一行:
    export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
    
  • 使配置立即生效:
    source ~/.bashrc
    

之后再运行dotnet --version即可正常检测版本。

3. 升级Anaconda的libstdc++库

如果不想修改系统路径优先级,可以直接升级Anaconda环境内的libstdc++:

conda install -c conda-forge libstdcxx-ng

该命令会从conda-forge源安装支持GLIBCXX_3.4.30的新版本libstdc++。

4. 检查并升级系统libstdc++(可选)

先确认系统是否已存在符合要求的libstdc++版本:

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX_3.4.30

如果无输出,说明系统库版本过低,执行以下命令升级:

sudo apt update && sudo apt install --only-upgrade libstdc++6

内容的提问来源于stack exchange,提问作者HNN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 18:40:49