RealVNC only provides a 32bit app for Raspberry Pi OS (32bit) and not a 64bit native application, at least for now. I'm using Ubuntu 20.10 on my Raspberry and need to use RealVNC to remotely access the system, as I don't know how to use SSH and I'm not interested in learning. how i can using vnc RealVNC Server on UBUNTU 20.10 (ARM64) on Raspberry Pi 4?

  • Note that this is breaking the licence conditions that RealVNC® Limited provides their proprietary binary to the Raspberry Pi OS distribution. /usr/share/doc/realvnc-vnc-server/copyright states that the binary is only for use on … the Raspberry Pi Foundation’s official supported operating system.
    – scruss
    Oct 23, 2021 at 13:25

5 Answers 5


This is how I got it working after losing hours searching the Internet for several consecutive problems I got.

$ sudo dpkg --add-architecture armhf
$ sudo dpkg --print-foreign-architectures
$ sudo apt update
$ sudo apt install libx11-6

Download the next 10 files from https://github.com/raspberrypi/firmware ... opt/vc/lib


These 10 files above need to be copied to /usr/lib.

$ sudo apt install gdebi
$ sudo gdebi VNC-Server-6.7.2-Linux-ARM.deb
$ sudo systemctl enable vncserver-x11-serviced.service
$ sudo systemctl enable vncserver-virtuald.service
$ sudo systemctl start vncserver-x11-serviced.service
$ sudo systemctl start vncserver-virtuald.service
$ sudo vnclicensewiz
$ sudo gedit /etc/gdm3/custom.conf

Uncomment “WaylandEnable=false”

Reboot the system and all is working. I hope this was helpful to someone.

  • Nice answer, thanks! One thing I don't understand is why did you add armhf architecture if you didn't install any packages for it. But then, I don't use Ubuntu or VNC, so I probably missed something obvious. Feb 12, 2021 at 17:09

There actually is a native arm64 build available in the raspberrypi.org repos, direct link to the deb package here: http://archive.raspberrypi.org/debian/pool/main/r/realvnc-vnc/realvnc-vnc-server_6.7.2.43081_arm64.deb

  • Unable to install realvnc-vnc-server: The following packages have unmet dependencies:. And no dependencies listed :(
    – icl7126
    Jan 24 at 9:57

Here is my script that puts things together: Gist link: Install RealVNC server on arm64 Linux

mkdir realvncserversetup && cd realvncserversetup
echo Add armhf arch
sudo dpkg --add-architecture armhf && sudo apt update

echo Download and install RealVNC server
wget -nv https://www.realvnc.com/download/file/vnc.files/VNC-Server-6.7.4-Linux-ARM.deb && sudo apt install ./VNC-Server-6.7.4-Linux-ARM.deb

echo Download and install dependencies
files=( libbcm_host.so libvcos.so libmmal.so libmmal_core.so libmmal_components.so \
    libmmal_util.so libmmal_vc_client.so libvchiq_arm.so libvcsm.so libcontainers.so )
for i in "${files[@]}"
    wget -nv https://github.com/raspberrypi/firmware/raw/master/opt/vc/lib/$i
sudo mv *.so /usr/lib/
cd ..

echo Enable VNC service on boot
sudo systemctl enable vncserver-x11-serviced.service
echo Start VNC service
sudo systemctl start vncserver-x11-serviced.service

I tried saeedkazemi script and could not log in with VNC. Ran parts of Sajjad Aemmi's answer:

sudo systemctl enable vncserver-virtuald.service
sudo systemctl start vncserver-virtuald.service
sudo gedit /etc/gdm3/custom.conf

and remove '#' to Uncomment WaylandEnable=false reboot and then was able to log in with no problem. Not sure what the reason to run sudo vnclicensewiz was for.

  • 1
    Please edit it so it is readable !
    – MatsK
    Aug 6, 2021 at 18:12

I just got vncserver functional on my Pi 4b with Ubuntu 21.10. I had it previously working with vncserver version 6.7.2 on ubuntu 20.10, but when I upgraded ubuntu to 21.10 and at the same time upgraded vncserver to 6.7.4 it had a library mismatch.

Copying in all the library files in the gist script shown by saeedkazemi above then restarting the 2 services listed there made it work

  • Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
    – Community Bot
    Oct 29, 2021 at 5:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.