You need to enable JavaScript to run this app. Linux 16.04启动TuringBot出现gdk_display_get_primary_monitor报错求助
优惠活动
大模型
产品
解决方案
定价
更多

Linux 16.04启动TuringBot出现gdk_display_get_primary_monitor报错求助

报错根因

gdk_display_get_primary_monitor 是GTK3 3.22版本新增的API,Ubuntu 16.04 官方软件仓库已停止大版本迭代,仅推送安全补丁,因此哪怕执行你之前试过的sudo apt-get update和sudo apt-get upgrade操作,系统内置的GTK3版本最高也仅能升级到3.20,远低于TuringBot编译时依赖的GTK版本,最终触发符号未定义的启动报错。

修复方案

方案1:定向补装适配版本的GTK3依赖(低系统侵入)

  • 添加提供高版本GTK3的PPA源:
    sudo add-apt-repository ppa:gnome3-team/gnome3-staging
    sudo apt-get update
  • 仅升级GTK3相关核心库,避免全量升级引发的系统依赖冲突:
    sudo apt-get install --only-upgrade libgtk-3-0 libgdk-3-0
  • 升级完成后验证版本,确认GTK3版本达到3.22及以上:
    dpkg -l | grep libgtk-3-0
  • 重新启动TuringBot验证即可。

方案2:定向加载便携版GTK3(完全不改动系统依赖)

如果添加PPA后出现其他系统组件的依赖冲突,可通过动态库路径定向加载的方式规避:

  • 下载与自身CPU架构匹配的GTK3 3.22+便携包,解压到用户私有目录(例如~/gtk3-libs)
  • 启动TuringBot时手动指定动态库加载路径,不修改系统全局环境变量:
    LD_LIBRARY_PATH=~/gtk3-libs/lib ./TuringBot
  • 可将上述命令写入自定义启动脚本,替换原本直接执行./TuringBot的启动方式。
注意事项
  • 不要强行将Ubuntu 16.04的源替换为更高版本系统的源做全量升级,会引发大量系统依赖崩坏的问题。
  • 若使用ARM架构的设备,需下载对应架构的GTK3库文件,不可混用x86架构的二进制动态库。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.25 22:36:03