Jumpnow Technologies

home code consulting contact

Running Qt5 Apps Over VNC Works Again

16 Feb 2017

The Buildroot project recently upgraded to Qt 5.8 and with it a new VNC platform plugin showed up

# ls /usr/lib/qt/plugins/platforms/
libqeglfs.so       libqminimal.so     libqoffscreen.so
libqlinuxfb.so     libqminimalegl.so  libqvnc.so

For embedded developers not running X11 systems, VNC was something Qt has been missing since the Qt4 days.

To use the VNC plugin either run your app with a -platform vnc argument or you can set the QT_QPA_PLATFORM environment variable like this

export QT_QPA_PLATFORM=vnc

I haven’t found any official Qt documentation on usage.

At least the size argument to the plugin seems to work the same as Qt4 so I’m using that.

To test I’m using a small Qt Widgets app tspress that I use for troubleshooting touchscreens.

I ran it like this from the RPi

# tspress -platform vnc:size=800x480
QVncServer created on port 5900

On a Fedora 25 workstation, I was using the TigerVNC Viewer.

On a Windows machine I was using TightVNC (only need the client pieces).

I spoke with another developer who told me Ubuntu 16.04’s Remote Desktop Client is working for him.

The response is a bit sluggish, but this should still be useful especially during development when the real display isn’t available or working yet.