Unable to Upgrade/Install RealVNC Server v7.12.0 on RPi

I'm encountering a problem with upgrading/installing the VNC-Server-7.12.0-Linux-ARM.deb package onto a Raspberry Pi currently running Debian v12.6 (Bookworm) and VNC-Server-7.11.1. Three occurrences for 'Illegal instruction' are observed during installation (see below), which resulted in the server failing to startup on boot/reboot. Please advise on how I could resolve those three error messages.

pi@raspberrypi:~/Downloads $ sudo dpkg -i ./VNC-Server-7.12.0-Linux-ARM.deb
(Reading database ... 162370 files and directories currently installed.)
Preparing to unpack .../VNC-Server-7.12.0-Linux-ARM.deb ...
Unpacking realvnc-vnc-server (7.12.0.14) over (7.11.1.26) ...
Setting up realvnc-vnc-server (7.12.0.14) ...
Updating /etc/pam.d/vncserver
Updating /etc/pam.conf... done
Looking for font path... /usr/share/fonts/X11/Type1,built-ins (from xset).
Illegal instruction
Illegal instruction
Illegal instruction
Installed systemd unit for VNC Server in Service Mode daemon
Start or stop the service with:
  systemctl (start|stop) vncserver-x11-serviced.service
Mark or unmark the service to be started at boot time with:
  systemctl (enable|disable) vncserver-x11-serviced.service

Installed systemd unit for VNC Server in Virtual Mode daemon
Start or stop the service with:
  systemctl (start|stop) vncserver-virtuald.service
Mark or unmark the service to be started at boot time with:
  systemctl (enable|disable) vncserver-virtuald.service

Processing triggers for gnome-menus (3.36.0-1.1) ...
Processing triggers for mailcap (3.70+nmu1) ...
Processing triggers for desktop-file-utils (0.26-1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for man-db (2.11.2-2) ...
pi@raspberrypi:~/Downloads $ 
0

Comments

7 comments
  • Forgot to mention that the RPi platform in question is with the Raspberry Pi Zero W... of which I've three that are all behaving the same when trying to update their RealVNC Server from v7.11.1 to v7.12.0.

    0
    Comment actions Permalink
  • Unsuccessful upgrade attempts via 'apt install':

    pi@raspberrypi:~/Downloads $ sudo apt install ./VNC-Server-7.12.0-Linux-ARM.deb
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    Note, selecting 'realvnc-vnc-server' instead of './VNC-Server-7.12.0-Linux-ARM.deb'
    The following packages will be upgraded:
      realvnc-vnc-server
    1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
    Need to get 0 B/7,394 kB of archives.
    After this operation, 200 kB of additional disk space will be used.
    Get:1 /home/pi/Downloads/VNC-Server-7.12.0-Linux-ARM.deb realvnc-vnc-server armhf 7.12.0.14 [7,394 kB]
    Reading changelogs... Done               
    (Reading database ... 162370 files and directories currently installed.)
    Preparing to unpack .../VNC-Server-7.12.0-Linux-ARM.deb ...
    Unpacking realvnc-vnc-server (7.12.0.14) over (7.11.1.26) ...
    Setting up realvnc-vnc-server (7.12.0.14) ...
    Updating /etc/pam.d/vncserver
    Updating /etc/pam.conf... done
    Looking for font path... /usr/share/fonts/X11/Type1,built-ins (from xset).
    Illegal instruction
    Illegal instruction
    Illegal instruction
    Installed systemd unit for VNC Server in Service Mode daemon
    Start or stop the service with:
      systemctl (start|stop) vncserver-x11-serviced.service
    Mark or unmark the service to be started at boot time with:
      systemctl (enable|disable) vncserver-x11-serviced.service

    Installed systemd unit for VNC Server in Virtual Mode daemon
    Start or stop the service with:
      systemctl (start|stop) vncserver-virtuald.service
    Mark or unmark the service to be started at boot time with:
      systemctl (enable|disable) vncserver-virtuald.service

    Processing triggers for desktop-file-utils (0.26-1) ...
    Processing triggers for hicolor-icon-theme (0.17-2) ...
    Processing triggers for gnome-menus (3.36.0-1.1) ...
    Processing triggers for man-db (2.11.2-2) ...
    Processing triggers for mailcap (3.70+nmu1) ...
    N: Download is performed unsandboxed as root as file '/home/pi/Downloads/VNC-Server-7.12.0-Linux-ARM.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
    pi@raspberrypi:~/Downloads $ 

    Successful downgrades back to RealVNC Server v7.11.1:

    pi@raspberrypi:~/Downloads $ sudo apt install ./VNC-Server-7.11.1-Linux-ARM.deb
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    Note, selecting 'realvnc-vnc-server' instead of './VNC-Server-7.11.1-Linux-ARM.deb'
    The following packages will be DOWNGRADED:
      realvnc-vnc-server
    0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
    Need to get 0 B/7,318 kB of archives.
    After this operation, 200 kB disk space will be freed.
    Do you want to continue? [Y/n] y
    Get:1 /home/pi/Downloads/VNC-Server-7.11.1-Linux-ARM.deb realvnc-vnc-server armhf 7.11.1.26 [7,318 kB]
    dpkg: warning: downgrading realvnc-vnc-server from 7.12.0.14 to 7.11.1.26
    (Reading database ... 162370 files and directories currently installed.)
    Preparing to unpack .../VNC-Server-7.11.1-Linux-ARM.deb ...
    Unpacking realvnc-vnc-server (7.11.1.26) over (7.12.0.14) ...
    Setting up realvnc-vnc-server (7.11.1.26) ...
    Updating /etc/pam.d/vncserver
    Updating /etc/pam.conf... done
    Looking for font path... /usr/share/fonts/X11/Type1,built-ins (from xset).
    Installed systemd unit for VNC Server in Service Mode daemon
    Start or stop the service with:
      systemctl (start|stop) vncserver-x11-serviced.service
    Mark or unmark the service to be started at boot time with:
      systemctl (enable|disable) vncserver-x11-serviced.service

    Installed systemd unit for VNC Server in Virtual Mode daemon
    Start or stop the service with:
      systemctl (start|stop) vncserver-virtuald.service
    Mark or unmark the service to be started at boot time with:
      systemctl (enable|disable) vncserver-virtuald.service

    Processing triggers for desktop-file-utils (0.26-1) ...
    Processing triggers for hicolor-icon-theme (0.17-2) ...
    Processing triggers for gnome-menus (3.36.0-1.1) ...
    Processing triggers for man-db (2.11.2-2) ...
    Processing triggers for mailcap (3.70+nmu1) ...
    N: Download is performed unsandboxed as root as file '/home/pi/Downloads/VNC-Server-7.11.1-Linux-ARM.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
    pi@raspberrypi:~/Downloads $ 
    0
    Comment actions Permalink
  • Boot log with RealVNC Server v7.12.0:

    Jul 27 19:37:11 raspberrypi systemd[1]: Started vncserver-x11-serviced.service - VNC Server in Service Mode daemon.

    Jul 27 19:37:11 raspberrypi systemd[1]: vncserver-x11-serviced.service: Main process exited, code=killed, status=4/ILL
    Jul 27 19:37:11 raspberrypi systemd[1]: vncserver-x11-serviced.service: Failed with result 'signal'.

    Jul 27 19:37:12 raspberrypi systemd[1]: vncserver-x11-serviced.service: Scheduled restart job, restart counter is at 1.
    Jul 27 19:37:12 raspberrypi systemd[1]: Stopped vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:12 raspberrypi systemd[1]: Started vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:12 raspberrypi systemd[1]: vncserver-x11-serviced.service: Main process exited, code=killed, status=4/ILL
    Jul 27 19:37:12 raspberrypi systemd[1]: vncserver-x11-serviced.service: Failed with result 'signal'.
    Jul 27 19:37:13 raspberrypi systemd[1]: vncserver-x11-serviced.service: Scheduled restart job, restart counter is at 2.
    Jul 27 19:37:13 raspberrypi systemd[1]: Stopped vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:13 raspberrypi systemd[1]: Started vncserver-x11-serviced.service - VNC Server in Service Mode daemon.

    Jul 27 19:37:13 raspberrypi systemd[1]: vncserver-x11-serviced.service: Main process exited, code=killed, status=4/ILL
    Jul 27 19:37:13 raspberrypi systemd[1]: vncserver-x11-serviced.service: Failed with result 'signal'.
    Jul 27 19:37:13 raspberrypi systemd[1]: vncserver-x11-serviced.service: Scheduled restart job, restart counter is at 3.
    Jul 27 19:37:13 raspberrypi systemd[1]: Stopped vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:13 raspberrypi systemd[1]: Started vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:13 raspberrypi systemd[1]: vncserver-x11-serviced.service: Main process exited, code=killed, status=4/ILL
    Jul 27 19:37:13 raspberrypi systemd[1]: vncserver-x11-serviced.service: Failed with result 'signal'.
    Jul 27 19:37:14 raspberrypi systemd[1]: vncserver-x11-serviced.service: Scheduled restart job, restart counter is at 4.
    Jul 27 19:37:14 raspberrypi systemd[1]: Stopped vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:14 raspberrypi systemd[1]: Started vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:14 raspberrypi systemd[1]: vncserver-x11-serviced.service: Main process exited, code=killed, status=4/ILL
    Jul 27 19:37:14 raspberrypi systemd[1]: vncserver-x11-serviced.service: Failed with result 'signal'.

    Jul 27 19:37:14 raspberrypi systemd[1]: vncserver-x11-serviced.service: Scheduled restart job, restart counter is at 5.
    Jul 27 19:37:14 raspberrypi systemd[1]: Stopped vncserver-x11-serviced.service - VNC Server in Service Mode daemon.
    Jul 27 19:37:14 raspberrypi systemd[1]: vncserver-x11-serviced.service: Start request repeated too quickly.
    Jul 27 19:37:14 raspberrypi systemd[1]: vncserver-x11-serviced.service: Failed with result 'signal'.
    Jul 27 19:37:14 raspberrypi systemd[1]: Failed to start vncserver-x11-serviced.service - VNC Server in Service Mode daemon.

     

    Boot log with RealVNC Server v7.11.1:

    Jul 27 13:01:43 raspberrypi systemd[1]: Started vncserver-x11-serviced.service - VNC Server in Service Mode daemon.

    Jul 27 13:01:44 raspberrypi vncserver-x11[485]: ServerManager: Server started
    0
    Comment actions Permalink
  • The newer versions of RealVNC server, after v7.11.1, does not work on the Raspberry Pi Zero, but they do work on the newer Raspberry Pi Zero 2. Suspect the problematic Server binaries are compiled for the ARM v8 instruction set, instead of using the legacy ARM v6 instruction set...

     

    0
    Comment actions Permalink
  • This issue is also discussed in the Raspberry Pi forum thread VNC server not working where it appears that all BCM2835/ARM1176 (ARMv6) based Raspberry Pi boards running 32-bit Debian Version 12.9 (Bookworm) encounter Illegal instruction errors only after upgrading to recent realvnc-vnc-server versions. To work around the issue for now, do the following after a clean install before updating/upgrading packages:

    sudo apt-mark hold realvnc-vnc-server

    The above will hold the realvnc-vnc-server package at version 7.11.0.18 which is the current (known good) default included in a clean install of 32-bit Debian Version 12.9 (Bookworm).

    In this case, vncpasswd version shows:

    $ vncpasswd -help|head -1
    VNC(R) Password Utility 7.11.0 (r18) ARMv6 (Apr 22 2024 15:03:37)

    Interestingly, on an BCM2836/Cortex-A7 (ARMv7) based Raspberry Pi 2 Model B Rev 1.1 running a clean install of the same 32-bit Debian Version 12.9 (Bookworm) release, I observe the following:

    gdavis@rpi-2-b:~ $ vncpasswd -help|head -1
    VNC(R) Password Utility 7.11.0 (r18) ARMv6 (Apr 22 2024 15:03:37)
    gdavis@rpi-2-b:~ $ sudo apt update
    // Cut
    gdavis@rpi-2-b:~ $ sudo apt-get install --only-upgrade realvnc-vnc-server
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    The following packages will be upgraded:
      realvnc-vnc-server
    1 upgraded, 0 newly installed, 0 to remove and 156 not upgraded.
    Need to get 7,441 kB of archives.
    After this operation, 400 kB of additional disk space will be used.
    Get:1 http://archive.raspberrypi.com/debian bookworm/main armhf realvnc-vnc-server armhf 7.13.1.57 [7,441 kB]
    Fetched 7,441 kB in 2s (4,450 kB/s)             
    Reading changelogs... Done
    (Reading database ... 136512 files and directories currently installed.)
    Preparing to unpack .../realvnc-vnc-server_7.13.1.57_armhf.deb ...
    Unpacking realvnc-vnc-server (7.13.1.57) over (7.11.0.18) ...
    Setting up realvnc-vnc-server (7.13.1.57) ...
    Updating /etc/pam.d/vncserver
    Updating /etc/pam.conf... done
    Looking for font path... not found.
    Original config file "/etc/vnc/pulse/daemon.conf.old" preserved
    Generating private key... done
    Installed systemd unit for VNC Server in Service Mode daemon
    Start or stop the service with:
      systemctl (start|stop) vncserver-x11-serviced.service
    Mark or unmark the service to be started at boot time with:
      systemctl (enable|disable) vncserver-x11-serviced.service

    Installed systemd unit for VNC Server in Virtual Mode daemon
    Start or stop the service with:
      systemctl (start|stop) vncserver-virtuald.service
    Mark or unmark the service to be started at boot time with:
      systemctl (enable|disable) vncserver-virtuald.service

    Processing triggers for desktop-file-utils (0.26-1) ...
    Processing triggers for hicolor-icon-theme (0.17-2) ...
    Processing triggers for gnome-menus (3.36.0-1.1) ...
    Processing triggers for man-db (2.11.2-2) ...
    Processing triggers for mailcap (3.70+nmu1) ...
    gdavis@rpi-2-b:~ $ vncpasswd -help|head -1
    VNC(R) Password Utility 7.13.1 (r57) ARMv7 (Dec 6 2024 18:38:27)

    So clearly, recent 32-bit realvnc-vnc-server package builds have change to support only ARMv7 based machines and no longer work on ARMv6 based machines.

    Are there any plans to update the realvnc-vnc-server package to restore ARMv6 support?

     

    0
    Comment actions Permalink
  • I wonder if these BCM2835/ARM1176 (ARMv6) based machines have already reached end of support life and therefore the change of the realvnc-vnc-server package build for ARMv7-only is expected? I tried to look for Raspberry Pi product briefs for these older ARMv6 machines to check support life status but couldn't find PBs for these older models. EOL for Raspberry Pi 3 Model B+ is January 2028 so it makes sense that these older ARMv6 based machines are already past EOL. In which case, the only solution is to disable realvnc-vnc-server package updates in the current OS release and/or use older OS releases.

    0
    Comment actions Permalink
  • Thanks for the informative replies confirming the problem. I'm surprised that no other user has encountered this flaw until recently. Anyway, I've been manually reverting back to the last working version, VNC-Server-7.11.1, every time it was unintentionally upgraded.

    This problem could easily be fix by RealVNC; just by compiling the RPi server code using the ARMv6 instruction set so to continue support of all RPi devices. The newer ARM versions are backward compatible for prior ARM versions' codes so the entire line of RPi hardware could be supported without much technical difficulties. I imagine that RealVNC would want more users and greater hardware support rather than dropping and shrinking its user base...

    0
    Comment actions Permalink

Please sign in to leave a comment.

Didn't find what you were looking for?

New post