stormchaser3000
Posts: 6
Joined: Wed Feb 17, 2021 3:52 pm

How to run the x86_64 build of Zoom on a Raspberry Pi 400.

Wed Jul 07, 2021 11:35 pm

Hello,

I would like to present a bit of a quick and dirty/hacky method of getting the desktop 64-bit version of the Zoom client working on the Raspberry Pi 4/400. Please note that these instructions may work with some modification on other 64-bit platforms and OSs. This is really only necessary until Pi-Apps has it.

First, your are going to need a whole ton of x64 libraries. I have already done most of the work for you, however, if you don't trust me to not have injected some form of malware into the libraries then feel free to download and extract them manually from a source of your choosing. I used packages.ubuntu.com.

To download the ones I prepared, use this link: x64_libs.7z

(please note that this will download from my personal webserver and that the uploads speeds at my house are garbage. If someone would be willing to mirror the above file for me I would be grateful.)

You will also need a recent build of box64 and a 64-bit ARM operating system (AArch64/arm64). If you do not have either of those then I would recommend finding an SD card you aren't using for anything and installing Manjaro ARM on it. DO NOT WIPE YOUR RASPBERRY PI OS SD CARD IF YOU HAVE ANYTHING IMPORTANT ON IT. You can find the build instructions for box64 here: https://github.com/ptitSeb/box64/blob/main/COMPILE.md

Then download the x86_64 Zoom client from https://zoom.us/download#client_4meeting (specifically the one from the "Other Linux OS" option)

Extract the downloaded Zoom client to a directory of your choosing and extract the x64_libs.7z within the newly extracted Zoom directory.

Open a terminal and use the cd command to change to your extracted zoom directory.

Code: Select all

cd path/to/zoom
Then run the Zoom client with box64 using this command:

Code: Select all

BOX64_LD_LIBRARY_PATH=./:./x64_libs ./ZoomLauncher
EDIT: if the above command fails, then you either need to install Box64, or restart systemd-binfmt. Try running zoom again after running the following:

Code: Select all

sudo systemctl restart systemd-binfmt
If all goes to plan, then you should have zoom display on your screen in probably 10 to 20 seconds (I can't remember the exact amount of time it takes to start up).

RoHdK
Posts: 2
Joined: Sun Sep 26, 2021 8:59 pm

Re: How to run the x86_64 build of Zoom on a Raspberry Pi 400.

Sun Sep 26, 2021 9:08 pm

Hi Stormchaser

Thanks for your post. I am running ubuntu mate 20.04 64 bit on pi 4. I got box64 installed, but when i try to run zoom it gets stuck at librt.so.1

Code: Select all

$ BOX64_LD_LIBRARY_PATH=./:./x64_libs ./ZoomLauncher
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096
Box64 with Dynarec v0.1.5 f054fb3 built on Sep 26 2021 21:30:26
BOX64_LD_LIBRARY_PATH: ./:./x64_libs/
Using default BOX64_PATH: ./:bin/
Counted 52 Env var
Looking for ./ZoomLauncher
Using native(wrapped) libpthread.so.0
Using emulated /lib/x86_64-linux-gnu/libstdc++.so.6
Using native(wrapped) libm.so.6
Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) librt.so.1
When I try to run zoom directly without the x64_libs it runs into a different problem

Code: Select all

$ ./zoom
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096
Box64 with Dynarec v0.1.5 f054fb3 built on Sep 26 2021 21:30:26
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 52 Env var
Looking for ./zoom
Zoom detected, trying to use system libturbojpeg if possible
Using native(wrapped) libdl.so.2
Using native(wrapped) libX11.so.6
Using native(wrapped) librt.so.1
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXext.so.6
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libxcb-xfixes.so.0
Using native(wrapped) libxcb-shape.so.0
Using native(wrapped) libxcb-shm.so.0
Using native(wrapped) libxcb-randr.so.0
Using native(wrapped) libxcb-image.so.0
Using native(wrapped) libxcb-keysyms.so.1
Using native(wrapped) libxcb-xtest.so.0
Using native(wrapped) libXfixes.so.3
Using native(wrapped) libXtst.so.6
Using native(wrapped) libglib-2.0.so.0
Using native(wrapped) libdbus-1.so.3
Using emulated libQt5QuickWidgets.so.5
Using emulated libQt5Quick.so.5
Using emulated libQt5Widgets.so.5
Using emulated libQt5X11Extras.so.5
Using emulated libQt5Gui.so.5
Using emulated libQt5Qml.so.5
Using emulated libQt5Network.so.5
Using emulated libQt5DBus.so.5
Using emulated libQt5Core.so.5
Using native(wrapped) libGL.so.1
Using native(wrapped) libpthread.so.0
Using emulated /lib/x86_64-linux-gnu/libstdc++.so.6
Using native(wrapped) libm.so.6
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1
Using native(wrapped) libz.so.1
Using emulated libicui18n.so.56
Using emulated libicuuc.so.56
Using emulated libicudata.so.56
Using native(wrapped) libgthread-2.0.so.0
                             Class      App      Lib Possible Culprit Flags
                resip::Connection      648      648 
                      resip::Data       36       36 
                 resip::DnsResult     1080     1080 
                   resip::Headers        1        1 
          resip::MsgHeaderScanner       40       40 
                resip::SipMessage     5208     5208 
         resip::TransportSelector      864      864 
                     resip::Tuple      128      128 
              resip::UdpTransport     1112     1112 
          resip::GenericIPAddress       28       28 

zoom started.
Client: Breakpad is using Single Client Mode! client fd = -1
Using emulated /home/sara/zoom/platforms/libqxcb.so
Using emulated libQt5XcbQpa.so.5
Using native(wrapped) libfontconfig.so.1
Using native(wrapped) libfreetype.so.6
Using native(wrapped) libX11-xcb.so.1
Using native(wrapped) libXrender.so.1
Using native(wrapped) libxkbcommon-x11.so.0
Using native(wrapped) libxkbcommon.so.0
Using native(wrapped) libXcursor.so.1
Using emulated /home/sara/zoom/platforminputcontexts/libcomposeplatforminputcontextplugin.so
Ask to run at NULL, quit silently
I previously was able to get 32bit zoom running on this pi with raspbian. However, ran into a number of audio issues that i could not resolve.

Any ideas appreciated!

Thanks
RoH

ptitSeb
Posts: 254
Joined: Tue May 19, 2015 2:49 pm

Re: How to run the x86_64 build of Zoom on a Raspberry Pi 400.

Tue Sep 28, 2021 7:13 am

It seems there is a regression, introduce by the wrapping of gtk libs :cry: .
I'll try to fix that. In the mean time, you can continue to use x86_64 version of gtk libs by using "BOX64_NOGTK=1" env. var.

So use:

Code: Select all

BOX64_NOGTK=1 BOX64_LD_LIBRARY_PATH=./:./x64_libs ./ZoomLauncher

ptitSeb
Posts: 254
Joined: Tue May 19, 2015 2:49 pm

Re: How to run the x86_64 build of Zoom on a Raspberry Pi 400.

Tue Sep 28, 2021 5:56 pm

I have found the issue and pushed a fix. Update box64 and you should be good to go.

RoHdK
Posts: 2
Joined: Sun Sep 26, 2021 8:59 pm

Re: How to run the x86_64 build of Zoom on a Raspberry Pi 400.

Fri Oct 01, 2021 9:13 pm

Thanks stormchaser and pitseb! Sorry about the delay I had hit some unrelated issues, and had to go and flash my pi all over again.

Can report that the latest box64 runs zoom fine using the libs from the post above. The microphone is available, unlike the box86 one.

I am currently debugging an issue with the sound output, which i think is unrelated - after i open zoom, the audio out seems to get garbled, and this persists after closing zoom. Should be able to test this more thoroghly over the weekend. Will post another update here if i get it all working perfectly!

(I am running ubuntu mate 20.04 64bit @ pi4 4gb)

Return to “Ubuntu”