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?


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. – Dmitry Grigoryev Feb 12 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


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

on jetson nano arm64 it does not work :

/usr/bin/vncserver-x11-core: error while loading shared libraries: libbcm_host.so: wrong ELF class: ELFCLASS64

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.