C++ / Raspberry Adventure (Stream vom 07.04.2024)

Опубликовано: 12 Июль 2026
на канале: adecc Scholar
151
7

Ein Video aus der der Raspberry- Adventure Reihe. Wir haben begonnen, den kleinen Rechner für den Stream und die Entwicklung vorzubereiten. Und da einige der Prozesse etwas langwieriger sind, und ich nicht so viel Zeit im Hauptstream verlieren will, an einem Sonntagabend die nächsten Schritte zur Vorbereitung.

Am Anfang noch einige Wiederholungen, dabei geht es besonders um die Vorbereitung innerhalb von Visual Studio für die Crossplatform- Entwicklung, und die Nutzung von SSH.
Hier noch mal die Zusammenfassung, um SSH zu nutzen.

Wenn der SSH- Server noch nicht installiert ist (meistens ist das bereits in der Installation:)
~: sudo apt update
~: sudo apt install openssh-server
~: sudo systemctl start ssh

Rechnernamen abrufen
~: hostname

Eintragen der SSH Verbindung unter Menu: Extras ~ Optionen
Plafformübergreifend : Verbindungsmanager

Testverbindung über Terminalfenster (Ansicht ~ Terminal), Auswählen der Combobox mit dem Raspberry, dann sollte eine Meldung mit Prompt im Userverzeichnis erscheinen.


Dann geht es weiter mit der Vorbereitung des Rechners. Wir hatten im Stream vorher ja den zum Zeitpunkt des Streams aktuellsten gcc übersetzt, gcc 13.2. Nun muss dieser auf dem Rechner natürlich auch bereitgestellt werden.

~: sudo make install

Man kann den vorherigen Compiler zwar deinstallieren, aber oft ist er in größere Pakete integriert. Also müssen die symbolischen Links angepaßt werden.

~: sudo ln -s -f /usr/local/bin/gcc /usr/bin/gcc
~: sudo ln -s -f /usr/local/bin/g++ /usr/bin/g++
~: sudo ln -s /usr/local/lib64/libstdc++.so.6.0.x libstdc++.so.6

Dann geht es um die Bereitstellung einer aktuellen cmake- Version, zum Zeitpunkt dieses Videos war das die Version 3.29.1. Generell ist wieder eine ältere cmake- Version auf dem Rechner. Aber auch hier wollen wir, dem Projekt- Gedanken folgend, den aktuellsten verfügbaren Stand nutzen. Hier noch einmal die Zusammenfassung der notwendigen Schritte. Es kann sein, das erforderliche Bibliotheken nicht vorhanden sind.

~: sudo apt update
~: sudo apt upgrade
~: sudo apt install libssl-dev

Herunterladen von der Internetseite cmake.org, danach wechseln ins Download- Verzeichnis.
~: cd Downloads

checken des Dateinamen / Version
~: ls

Auspacken
tar xf cmake-3.29.1.tar.gz ( ~ tar xf cmake-3.29.1.tar.gz)

Wechseln in das cmake- Verzeichnis
cd cmake-3.29.1 ( ~ cd cmake-3.29.1)

Verknüpfungen reparieren (-f erzwingt) (hier für .32)
~: sudo ln -s /usr/local/lib64/libstdc++.so.6.0.32 libstdc++.so.6

Sollte es weiterhin Probleme mit den Bibliotheken geben (das leidige Thema), kann es helfen, die Libs manuell in Verzeichnisse zu kopieren. Vorher die Bibliotheken lokalisieren (installierte Version hat die Buildnummer 30, die neue 32)
~: sudo find / -name "libstdc++.so.*"

~: sudo cp /usr/local/lib64/libstdc++.so.6.0.32 /usr/lib/aarch64-linux-gnu
~: cp /usr/local/lib64/libstdc++.so.6 /usr/lib/aarch64-linux-gnu

( gegebenenfalls neu starten des Rechners)
-: sudo reboot

Erst konfigurieren/übersetzen, wenn Pfade und Links korrekt sind und aufgelöst werden

cmake konfigurieren, Vorbedingungen prüfen (kann wiederholt werden, falls Probleme)
~: cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .

Übersetzung
~: make -j$(nproc)

Installieren
~: sudo make install

Und auch hier müssen die symbolischen Links am Ende angepasst werden, da die Installation unter /usr/local/bin erfolgte
(ev. für /usr/local/bin/cmake, /usr/local/bin/ctest und /usr/local/bin/cpack durchführen)

~: sudo ln -s -f /usr/local/bin/cmake /usr/bin/cmake

Prüfen der Version (und ob funktionierend)
~: cmake --version
~: cpack --version
~: ctest --version


Und zum Abschluss des Streams dann auch das erste "Hello World" Programm mit Visual Studio auf dem Raspberry übersetzt.