在 CentOS 上运行 Flutter 应用出现白屏,通常不是代码逻辑问题,而是环境/渲染/依赖相关。下面按「最常见 → 较少见」给你排查清单。
CentOS 如果是 服务器版 / 最小化安装,没有桌面环境,Flutter(尤其是 desktop)会直接白屏或闪退。
✅ 检查:
echo $XDG_SESSION_TYPE
tty → 没有图形界面x11 或 wayland✅ 解决:
sudo yum groupinstall "GNOME Desktop"
或
ssh -X user@centos
你可能在 CentOS 上跑的是 Web 或 Desktop,但环境不对
flutter config --enable-linux-desktop
flutter run -d linux
flutter run -d chrome
⚠️ CentOS 上 Chrome 可能没装或无法启动
Flutter Linux 依赖:
✅ 安装依赖:
sudo yum install gtk3-devel pkgconfig xorg-x11-server-devel \
cairo-devel pango-devel glib2-devel
常见于:
runApp() 之前抛异常MaterialApp 没包 Scaffold✅ 最小测试代码:
void main() => runApp(
MaterialApp(
home: Scaffold(
body: Center(child: Text("Hello CentOS")),
),
),
);
Flutter Linux 对 Wayland 支持不完整
✅ 强制使用 X11:
export GDK_BACKEND=x11
flutter run -d linux
flutter run -v
看是否有:
你可以告诉我:
flutter run -v 最后 20 行输出我可以直接帮你定位到具体一行原因。