Can someone explain how this script bypasses CPU architecture incompatibility?

This page summarizes the projects mentioned and recommended in the original post on /r/linux4noobs

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • SDRPlusPlus

    Cross-Platform SDR Software

  • #!/bin/sh set -e [ $(id -u) = 0 ] && echo "Please do not run this script as root" && exit 100 echo "Installing dependencies" sudo apt update sudo apt install -y build-essential cmake git libfftw3-dev libglfw3-dev libglew-dev libvolk2-dev libzstd-dev libsoapysdr-dev libairspyhf-dev libairspy-dev \ libiio-dev libad9361-dev librtaudio-dev libhackrf-dev librtlsdr-dev libbladerf-dev liblimesuite-dev p7zip-full wget git clone https://github.com/AlexandreRouma/SDRPlusPlus cd SDRPlusPlus echo "Preparing build" sudo mkdir -p build cd build sudo mkdir -p CMakeFiles sudo cmake .. -DOPT_BUILD_RTL_SDR_SOURCE=ON echo "Building" sudo make echo "Installing" sudo make install echo "Done!" ### modded by TekMaker 26/3/2022

  • SDRplus

    An installer script to compile SDR++ on the Raspberry PI 3/4/400

  • Could someone explain (without going into too much depth) how exactly this script makes it so that it can run on an ARM processor, whereas when I tried to install the program without I would get an architecture incompatibilty message?

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • box64

    Box64 - Linux Userspace x86_64 Emulator with a twist, targeted at ARM64 Linux devices

  • This analogy falls apart quickly and really isn't great like trimming sandwiches might be like using box64 and box86 and you would be using a bread machine (compiler) to make another bread machine (another/newer compiler). You need to read up on what a compiler to a specific CPU instruction set does to see why a binary made for one can't just run on another without translation or taking the source code and making a binary (what your sample script does) that runs on that CPU arch.

  • box86

    Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices

  • This analogy falls apart quickly and really isn't great like trimming sandwiches might be like using box64 and box86 and you would be using a bread machine (compiler) to make another bread machine (another/newer compiler). You need to read up on what a compiler to a specific CPU instruction set does to see why a binary made for one can't just run on another without translation or taking the source code and making a binary (what your sample script does) that runs on that CPU arch.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts