buildroot && qt && x11vnc

文章讲述了在QT4版本中,可以使用-displayVNC选项通过vncviewer连接,而QT5及以上版本不再支持这种方式。在RK3568平台上,由于编译的qt默认基于eglfs插件,与x11vnc冲突,因此需要将qt显示配置为xcb插件。通过在buildroot编译时添加特定配置,以支持最小的X11框架,并在运行时使用-platformxcb参数指定分辨率,以实现通过vncviewer连接。

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

1.采用x11vnc的原因
qt4和qt5 x11vnc的区别是在之前qt4版本编译的libqvnc.so,即有vnc插件,可通过-display VNC:size=1024x768来通过vnc viewer连接。对于qt5或以上的版本,虽然说编译出了libqvnc.so的库但是没有了这种vnc插件的支持。
2.编译配置
平台rk3568 编译buildroot时,编译出来的qt默认是基于eglfs插件,但却和x11vnc有冲突,于是编译qt显示为xcb插件,即在qt目录下plugins/platforms里会编译出libqxcb.so,这是x11vnc连接后需要调用的库。
移植最小的x11框架配置添加在编译时的config中:

BR2_PACKAGE_XAPP_TWM=y
BR2_PACKAGE_XAPP_XCALC=y
BR2_PACKAGE_XAPP_XCLOCK=y
BR2_PACKAGE_XAPP_XEYES=y
BR2_PACKAGE_XAPP_XINIT=y
BR2_PACKAGE_XDRIVER_XF86_INPUT_KEYBOARD=y
BR2_PACKAGE_XDRIVER_XF86_INPUT_MOUSE=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_CIRRUS=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_FBDEV=y
BR2_PACKAGE_XDRIVER_XF86_VIDEO_VESA=y
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_XSERVER_XORG_SERVER=y
BR2_PACKAGE_XTERM=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y(采用ulibc)
BR2_USE_WCHAR=y

运行程序时带上-platform xcb -geometry 1024x768 &参数后台运行,分辨率为1024x768,即可通过vnc viewer连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值