Beschaffung von Code::Blocks
Die Beschaffung von Code::Blocks ist unter Ubuntu und dem von mir bevorzugten Linux Mint sehr einfach. Verwenden Sie aber nicht einfach die Standard-Repositories, da diese nur eine veraltete Version von Code::Blocks zur Verfügung stellen: Die in den offiziellen Paketquellen enthaltene Version von Code::Blocks ist bereits über drei Jahre alt!
Neues Repository hinzufügen
Die derzeit aktuellste Version von Code::Blocks wird von verschiedenen Entwicklern gewartet: Sie pflegen unter https://launchpad.net häufig ein Repository, dass Sie zunächst in Ihre Paketquellen aufnehmen müssen. Einer dieser Entwickler heißt Damien Moore. Fügen Sie sein Repository mit
sudo add-apt-repository ppa:ppa:damien-moore/codeblocks
zu Ihren Paketquellen hinzu. Bevor Sie die neueste Version von Code::Blocks installieren, sollten Sie eine eventuell installierte Version zunächst mit
sudo apt-remove codeblocks
löschen. Anschließend führen Sie, wie unter Ubuntu und Linux Mint üblich, sudo apt-get update
und sudo apt-get upgrade
aus. Wenn Sie hiermit fertig sind, können Sie die aktuelle Version von Code::Blocks (Stand Mai 2016) mit
sudo apt-get install codeblocks
auf Ihrem Computer installieren.
Code::Blocks konfigurieren
Der nächste Schritt besteht darin, Code::Blocks eine Cross-Toolchain zuzuweisen.
Festlegen eines eindeutigen Namens für die Cross-Toolchain
Hierzu legen Sie zunächst einen Namen fest, unter dem Sie die Cross-Toolchain zu jedem beliebigen Zeitpunkt mitsamt der einmalig durchzuführenden Konfiguration aktivieren können. Klicken Sie hierzu im Menü Settings
den Eintrag Compiler...
und anschließend die Schaltfläche Global Compiler Settings an. Standardmäßig steht im Feld Selected Compiler
nun der Name GNU GCC Compiler
. Mir ist der Name zu allgemein, da die GNU Compiler Collection Compiler für verschiedene Programmiersprachen enthält: Hierzu zählen u.a. die Programmiersprachen C++, C und Java.
Klicken Sie nun die Schaltfläche Rename
an. Es öffnet sich ein Textfeld, in das Sie den von Ihnen gewünschten Namen der Cross-Toolchain und gegebenenfalls den des Zielsystems eingeben.
Verbindung herstellen zwischen Code::Blocks und der Cross-Toolchain
Bisher haben Sie nur den Namen der Cross-Toolchain festgelegt: Eine Verbindung zu ihr ist damit noch nicht erstellt! Diese Verbindung soll aber nun hergestellt werden.
- Tragen Sie nun im Feld
Compiler's installation directory
den Pfad zur Cross-Toolchain ein. - Achten Sie darauf, dass Sie nicht das
bin
-Verzeichnis mit aufnehmen: Code::Blocks sucht hiernach automatisch im angegebenen Verzeichnis der Cross-Toolchain. Gäben Sie hier dasbin
-Verzeichnis ebenfalls an, so würde Code::Blocks unterhalb von/opt/toolchain/bin
nach einem weiterenbin
-Verzeichnis suchen, das aber nicht existiert. - Drücken Sie niemals die Schaltfläche Auto-detect! Code::Blocks sucht - so mein Eindruck - ausschließlich im Verzeichnis /usr/bin nach einer (Cross-)Toolchain.
Toolchain executables und Optionen konfigurieren
Damit Sie die hier beschriebenen Schritte problemlos nachvollziehen können, müssen folgende Voraussetzungen erfüllt sein:
- Die Cross-Toolchain muss installiert sein. Das Installationsverzeichnis ist beliebig, bei mir wurde sie unter
/opt/toolchain
installiert. - Code::Blocks ist in der aktuellsten Version installiert.
Zur Erinnerung: Die Datei- und Verzeichnisstruktur der Cross-Toolchain sollte nach der Installation und unabhängig von dem von Ihnen gewählten Installationsverzeichnis) folgendermaßen aussehen:
Klicken Sie nun im markierten Reiter den Eintrag Toolchain executables
an. Die folgende Abbildung zeigt, welche Schaltfläche hiermit gemeint ist:
Durch die Einstellung des Suchpfads unter Compiler's installation directory
wird die Auswahl der verschiedenen Compiler, Linker, Archivierer, Debugger usw. automatisch auf das angegebene Verzeichnis beschränkt. Die folgende Abbildung zeigt, welche Programme Sie hier einstellen müssen:
Im Feld Make program
sollten Sie nun noch die in der Abbildung gezeigten Einträge vornehmen. Damit der richtige Compiler für die gewünschte Architektur verwendet wird, müssen hier die folgenden Angaben enthalten sein (diese funktionieren so beim Raspberry Pi):
- ARCH=arm
- CROSS_COMPILE=$CCPREFIX
- ... und natürlich das Programm
make
selber.
Ich habe es bisher selber noch gar nicht ausprobiert: Es sollte möglich sein, hier auch die Option -j zu einzugeben. Im Buch finden Sie auf Seite 159 nähere Informationen zu dieser Option.
Die Entwicklungsumgebung ist hiermit vollständig betriebsbereit. Viel Erfolg bei der Software-Entwicklung!