Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Simplebuild 3 (310 Final) *de en bg es fr it nl pl pt tr* language support

simplebuild3 v2026.03 — Open Embedded SDK Toolchains & QEMU Smoke Testing

1. Open Embedded SDK (OESDK) Toolchains
(experimental)
Wichtige Hinweise:

  • Dieses Feature ist experimentell und richtet sich ausschließlich an erfahrene User die mit dem OpenEmbedded Build-System vertraut sind
  • OESDK-Toolchains sind Box-individuell — im Gegensatz zu den meisten bisherigen Toolchains die für mehrere Geräte einer Architektur passen, wird hier ein Toolchain pro Machine/Box erstellt
  • Ich leiste keinen Support für die OpenEmbedded Build-Systeme selbst (OE-Alliance, OpenPLi, opendreambox etc.) — Probleme beim Bauen des SDKs müssen in den jeweiligen Communities gelöst werden
s3 kann jetzt Toolchains direkt aus Open Embedded Build-Environments erstellen. Neben den bestehenden Buildern (crosstool-NG, Freetz-NG, Android-NDK) steht damit ein vierter Toolchain-Typ zur Verfügung.

Was bringt das?

  • Toolchains die exakt zur Zielbox passen — gleiche glibc, gleiche Kernel-Headers, gleiche Library-Versionen wie im Image
  • OpenSSL, libusb, libdvbcsa, pcsc-lite, curl und zlib sind direkt im SDK enthalten — kein nachträgliches tcupdate nötig
  • Unterstützung für verschiedene Build-Environments: OE-Alliance (alle Distros 7.6/8.0), OpenPLi (scarthgap), opendreambox (2.5/2.6)
Wichtig: USE_EXTRA ist Pflicht! OESDK-Toolchains benötigen zwingend das USE_EXTRA Flag beim Build. Die CPU-spezifischen Compiler-Flags (z.B. -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a15) und der Dynamic-Linker-Pfad stehen in extra_cc und extra_ld — diese werden nur mit USE_EXTRA angewendet.
Code:
./s3 sf8008_openatv_7.6 USE_EXTRA
# oder im Menü: USE_EXTRA aktivieren
Ohne USE_EXTRA fehlen die Tune-Flags und der Compiler fällt auf falsche Defaults zurück (z.B. Soft-Float statt Hard-Float), was zu Build-Fehlern oder nicht startenden Binaries führt.

Wie funktioniert es?

Im Cross Toolchain Template wird die Machine, Distro und das Build-Repo definiert (support/crosstool/templates)\:
Code:
#toolchain template: openATV 7.6 Octagon SF8008
#toolchain template version: 1
OESDK_MACHINE="sf8008"
OESDK_OEM=""
OESDK_DISTRO="openatv"
OESDK_REPO_URL="https://github.com/oe-alliance/build-enviroment.git"
OESDK_REPO_BRANCH="7.6"
OESDK_REPO_LOCATION="oe-sdk_${OESDK_DISTRO}_${OESDK_REPO_BRANCH}"
OESDK_SDK_EXTRAS="openssl-dev openssl-staticdev libusb1-dev libusb1-staticdev libdvbcsa-dev libdvbcsa-staticdev pcsc-lite-dev pcsc-lite-staticdev curl-dev curl-staticdev"

Dann einfach über ./s3 tcupdate das Template auswählen und bauen lassen. s3 erledigt den Rest:

  • Build-Environment klonen (oder vorhandenes nutzen via OESDK_REPO_LOCATION)
  • bitbake meta-toolchain mit den konfigurierten dev-Paketen ausführen
  • SDK installieren, strippen und die toolchains.cfg generieren
Eigenes Build-Environment nutzen

Wer bereits ein OE Build-Environment hat, kann es direkt einbinden — kein erneutes Klonen nötig:
Code:
OESDK_REPO_LOCATION="/home/user/oe-alliance/oatv-7.6"

Portabilität

OESDK-Toolchains können zwischen Build-Rechnern (x86_64) kopiert werden. Beim ersten Zugriff erkennt s3 automatisch ob die Pfade im Toolchain noch stimmen und führt bei Bedarf ein Relocate durch.

Mitgelieferte Templates

Für den Einstieg sind Beispiel-Templates für verschiedene Kombinationen enthalten:

  • openATV 7.6 / 8.0 (pulse4kmini, sf8008, vusolo2)
  • OpenPLi 10.0 (pulse4kmini, sf8008, vusolo2)
  • opendreambox 2.5 / 2.6 (dm920, dreamone)
2. QEMU Post-Build Smoke Test

Nach jedem erfolgreichen Build kann s3 jetzt automatisch prüfen ob das gebaute oscam-Binary startet — ohne echte Hardware. Dazu wird QEMU User-Mode Emulation genutzt.

Aktivierung in support/configs/simplebuild.config:
Code:
POSTBUILD_QEMU_TEST=1
POSTBUILD_QEMU_TIMEOUT=5
POSTBUILD_QEMU_PARAM=""
POSTBUILD_QEMU_EXPECT=Server running
Beispiel-Ausgabe:
Code:
 QEMU ------->  testing oscam-...-webif-dvbapi-ssl-... (5s timeout)
          20:43:53 >> OSCam << cardserver log switched
          20:43:53 (main) System name = Linux
          20:43:53 (main) Machine = armv7l
          20:43:53 (webif) HTTP Server running. ip=:: port=8888
 QEMU ------->  PASS (Server running found)

Der QEMU-Test:

  • Erkennt die Ziel-Architektur automatisch (arm, aarch64, mipsel, etc.)
  • Nutzt das Sysroot der Toolchain als Library-Pfad
  • Zeigt die oscam-Ausgabe live an
  • Meldet PASS wenn der erwartete String innerhalb des Timeouts erscheint
  • Installiert qemu-user-binfmt automatisch falls nicht vorhanden
Voraussetzung:
Code:
sudo apt install qemu-user-binfmt    # Debian/Ubuntu
sudo dnf install qemu-user-static    # Fedora/RHEL

Weitere Änderungen

  • ./s3 tcupdate installiert jetzt nur noch den Builder der tatsächlich benötigt wird, nicht mehr alle vier auf einmal
  • Library-Builds (OpenSSL, libusb, pcsc-lite etc.) funktionieren auch mit OESDK-Toolchains
  • patchelf wird bei Bedarf automatisch installiert (OESDK-Toolchain Relocation)

Thx @WXbet
Quelle:hxxps://board.streamboard.tv/forum/thread/37367-simplebuild-3-talk-in-en-de-firstpost-changelog/?postID=622479#post622479
 
Zuletzt bearbeitet:
"opendreambox 2.5 / 2.6 (dm920, dreamone)"

die crosstool-templates sind nur beispiele - und selbsterklärend!
analog dazu kann man sich also zb. die DM900,7080,820,520 selbst erstellen und anpassen!
 
Zuletzt bearbeitet:
Hi,
versuche es zum Laufen zu bringen auf Raspberry Pi3 "Debian GNU/Linux 13 (trixie)"
Bekomme diesen Fehler "have upx Version _sys_check: line 47: [: ==: unary operator expected nok"
Upx habe ich die Vrsion - upx-ucl is already the newest version (4.2.4-1.1)
 
Auch hier im Forum zu finden ....
 
Zurück
Oben
📱
Forum App auf dein Handy
Schneller. Push-Benachrichtigungen. Offline-fähig.
Öffnen