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

Linux环境raylib库运行报错:Failed to initialize Graphic Device

解决raylib运行时"X11: Failed to open display :0"报错

1. 检查并设置DISPLAY环境变量

  • 先查看当前DISPLAY变量值:
    echo $DISPLAY
    
  • 如果输出不是:0,手动设置变量后重新运行程序:
    export DISPLAY=:0
    ./a.out
    
  • 若通过SSH远程连接服务器,需开启X11转发:
    • 连接时添加-X参数:ssh -X 你的用户名@服务器地址
    • 确保服务器端SSH配置已启用X11转发:编辑/etc/ssh/sshd_config,将X11Forwarding设为yes,然后重启sshd服务:sudo systemctl restart sshd

2. 确认当前用户拥有X11显示访问权限

  • 临时允许当前用户访问X11显示(仅测试用,不建议长期保持):
    xhost +local:$USER
    
  • 检查~/.Xauthority文件权限,确保归属当前用户:
    ls -l ~/.Xauthority
    
  • 若权限错误,修改归属:
    chown $USER:$USER ~/.Xauthority
    

3. 补全X11及GLFW相关依赖

  • Debian/Ubuntu系列系统:
    sudo apt update && sudo apt install xorg-dev libglfw3-dev
    
  • RHEL/CentOS/Fedora系列系统:
    sudo dnf install xorg-x11-server-devel glfw-devel
    

4. 无桌面环境下使用raylib无头模式

如果运行机器没有桌面环境,可修改代码启用无头模式:

// 方法1:隐藏窗口
InitWindow(800, 600, "Test", FLAG_WINDOW_HIDDEN);

// 方法2:完全无头(无窗口创建)
SetConfigFlags(FLAG_HEADLESS);
InitWindow(0, 0, "Headless Test");

编译命令保持原命令即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 22:13:16