Skip to content

Cross Compiling SatPI

Marc edited this page Jan 31, 2024 · 14 revisions
  • Here is an Cross Compiling Toolchain, I use for Vu+/GigaBlue Receivers (Broadcom CPU) it has MIPS, MIPSEL and ARM cross-compiler:
    https://github.com/Broadcom/stbgcc-6.3/releases
    https://github.com/Broadcom/stbgcc-8.3/releases
    It should be unpacket it in ~/vu/opt/ on your build environment, because the envARM.sh uses this path

  • To setup (with above toolchain) the Cross Compile environment for the correct CPU, use one of these in a terminal:

    • source envARM.sh -> Only once, to enable build environment for ARM Broadcom cross-compiler

      • source envARM.sh gcc12 -> To use ARM GCC 12 cross-compiler
    • source envMIPS.sh -> Only once, to enable build environment for MIPS Broadcom cross-compiler

    • source envMIPSEL.sh -> Only once, to enable build environment for MIPSEL Broadcom cross-compiler

  • To run SatPI on Enigma2 you can use:
    make ENIGMA=yes -> Normal build with Enigma support
    make debug ENIGMA=yes -> Debug build with Enigma support

  • Cross Compiling with DVBCSA, then copy these files to your build environment for example ARM:

    • The header file dvbcsa.h needs to go here:
      ~/vu/opt/toolchains/stbgcc-8.3-0.4/arm-unknown-linux-gnueabihf/include/c++/8.3.0/dvbcsa/dvbcsa.h
    • Find on the receiver /usr/lib/libdvbcsa.so.1.0.1 and just copy and rename it to:
      ~/vu/opt/toolchains/stbgcc-8.3-0.4/arm-unknown-linux-gnueabihf/lib/libdvbcsa.so
    • You can install libdvbcsa package in (OpenATV or Teamblue) with:
      opkg install libdvbcsa
    • If you use MIPS or MIPSEL you need to copy the files to the appropriate directory for that compiler

  • For Cross Compiling if there is no specific toolchain, here are some tips you can try (I did not try this myself):

    • get the sys root like headers and libraries for your device and copy it to dir
      export INCLUDES=--sysroot=dir
    • for pointing to a different compiler for your device
      export CXXPREFIX=arm-linux-gnueabihf-
      export CXXSUFFIX=
    • To buils just run (Or some other build you like)
      make debug