linux下qt程序报qt.qpa.xcb: could not connect to display 错的解决方法

文章讲述了在将Qt项目移植到Linux时遇到的错误,即couldnotconnecttodisplay。问题出在未正确设置DISPLAY环境变量。作者指出,虽然qxcb库已找到但无法加载,因为Qt无法连接显示设备。解决方法是在Linux终端中临时设置DISPLAY为:0,并提醒读者此设置仅限当前终端会话。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近qt的项目需要在移植到linux上,在linux上运行时,报qt.qpa.xcb: could not connect to display qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found的错,具体错误信息如下图:

 明明已经找到了qxcb这个库,但是却加载不上,插件位置也是正确的,就是加载不上。

其实这个错误原因不是插件本身的问题,插件是没问题的,这个错误是qt无法连接到显示设备,问题出现在linux上,有个DISPLAY环境变量,这个环境变量需要正确设置。

在linux上查看该环境变量是否正确,在终端上执行echo命令:

echo $DISPLAY

输出的为空,则表示该环境变量没有设置。我使用的是debian系统,默认的是没有设置该环境变量。

因此需要设置该环境变量,在终端上执行下面命令:

export DISPLAY=:0

在该终端上继续执行qt程序,成功运行起来。

需要注意的是,在终端上export只是在该终端上临时生效 ,换一个终端需要再次执行该命令。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值