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

Ubuntu下运行Heroku/gitkraken提示GLIBC_2.34未找到的解决求助

解决Ubuntu中Snap应用依赖GLIBC版本不兼容的问题

问题根源

报错核心原因是Snap应用的沙箱环境优先加载了自身核心组件(snap/core)中的旧版本GLIBC,但系统全局的libgtk3-nocsd.so.0库依赖更高版本的GLIBC(2.34+),两者冲突导致应用启动失败。

解决方案

1. 临时/永久禁用GTK3无CSD补丁

报错中提到的libgtk3-nocsd.so.0是用于移除GTK3窗口装饰的第三方补丁库,是冲突的触发点:

  • 临时测试:运行Snap应用前清空预加载库路径:
    LD_PRELOAD="" heroku login
    LD_PRELOAD="" gitkraken
    
    如果能正常启动,说明是该补丁库导致的冲突。
  • 永久解决:直接卸载该补丁包:
    sudo apt remove --purge libgtk3-nocsd0 libgtk3-nocsd0:i386
    

2. 替换Snap版应用为原生版本

Snap的沙箱隔离机制易引发库版本冲突,换成系统原生安装包可彻底规避问题:

  • Heroku CLI:卸载Snap版,用官方脚本安装:
    sudo snap remove heroku
    curl https://cli-assets.heroku.com/install-ubuntu.sh | sh
    
  • GitKraken:卸载Snap版,选择deb包或AppImage版本安装:
    sudo snap remove gitkraken
    # 下载deb包(可替换为官网最新版本链接)
    wget https://release.gitkraken.com/linux/gitkraken-amd64.deb
    sudo dpkg -i gitkraken-amd64.deb
    sudo apt install -f  # 修复依赖问题
    

3. 更新Snap核心组件

尝试更新Snap的基础核心库,修复沙箱内的GLIBC版本问题:

sudo snap refresh core
sudo snap refresh core22
# 若更新失败,重新安装core组件
sudo snap remove core
sudo snap install core

4. 检查系统库加载优先级

确认LD_LIBRARY_PATH环境变量未强制指向Snap的库路径:

echo $LD_LIBRARY_PATH

如果输出包含snap/core或其他Snap相关路径,检查~/.bashrc、~/.zshrc或/etc/profile等配置文件,移除对应的export LD_LIBRARY_PATH语句,重启终端后再测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 06:49:59