1# Working with ARM/ARM64/the Raspberry PI 2 3Open Screen Library supports cross compilation for both arm32 and arm64 4platforms, by using the `gn args` parameter `target_cpu="arm"` or 5`target_cpu="arm64"` respectively. Note that quotes are required around the 6target arch value. 7 8Setting an arm(64) target_cpu causes GN to pull down a sysroot from openscreen's 9public cloud storage bucket. Google employees may update the sysroots stored 10by requesting access to the Open Screen pantheon project and uploading a new 11tar.xz to the openscreen-sysroots bucket. 12 13NOTE: The "arm" image is taken from Chromium's debian arm image, however it has 14been manually patched to include support for libavcodec and libsdl2. To update 15this image, the new image must be manually patched to include the necessary 16header and library dependencies. Note that if the versions of libavcodec and 17libsdl2 are too out of sync from the copies in the sysroot, compilation will 18succeed, but you may experience issues decoding content. 19 20To install the last known good version of the libavcodec and libsdl packages 21on a Raspberry Pi, you can run the following command: 22 23```bash 24sudo ./cast/standalone_receiver/install_demo_deps_raspian.sh 25``` 26