Das letzte mal habe ich anhand eines ersten “leeren” VST-Plugin Projektes den Projucer kurz vorgestellt. Wie man ein neues Projekt anlegt, die JUCE Module einbindet und für seine Plattform und IDE der Wahl diese Projekte exportiert. Heute will ich etwas näher auf den Projucer eingehen. Dieser Beitrag ist an das englische Tutorial zu diesem Thema auf den JUCE Seiten angelehnt.

Wenn man sich die Dateien eines Projucer Projektes etwas genauer ansieht, dann findet man folgende Struktur:

Die Ordnerstruktur eines Projucer Projektes.

In der obersten Ebene befindet sich die *.jucer Projektdatei, in der alle Einstellungen des Projucer abgelegt sind. Eine Ebene tiefer befinden sich dann die verschiedenen IDE Projekte im Builds Ordner, die der Projucer auf Wunsch anlegt. Hier ist ein XCode-Projekt unter dem Mac-Betriebssystem zu sehen.

Im Source Ordner finden wir die Sourcefiles unseres Plugins und im JuceLibraryCode Ordner sind einige vom Projucer erstellte C++ Header Dateien abgelegt, die den JUCE Library Code einbinden. Der eigentliche JUCE Code liegt aber nicht direkt in diesem Ordner, sondern ist im eigentlichen JUCE Verzeichnis, welches wir mit der Installation von JUCE angelegt haben.

Ein Doppelklick auf die .jucer Projektdatei öffnet den Projucer mit diesem Projekt.

Der File Browser des Projucers

Der Projucer bietet einen File Browser, der die Sourcefiles unseres Plugins anzeigt. Beim Klick auf die Files können diese im simplen Texteditor des Projucer bearbeitet werden. Für klitzekleine Änderungen muss man also nicht zwangsläufig eine IDE starten. Man kann von hier aus neue Sourcefiles hinzufügen, vorhandene Files löschen oder umbenennen. Mit einem Rechtsklick in den File Browser öffnet sich das Kontextmenü, in den alle Aktionen aufgelistet sind. Dieses Menü kann ebenfalls über das + unten geöffnet werden.

Das Kontextmenü des File Browsers

Gruppen sind übrigens nicht dasselbe wie Verzeichnisse. Wenn man möchte, könnte man Gruppen anlegen, die anders benannt sind als die entsprechenden Ordner. Die Änderungen an der Struktur, die man hier macht, werden beim Abspeichern des Projektes in den entsprechenden IDE-Projekten ebenfalls sichtbar, somit bleibt die Struktur auf allen Systemen konsistent.

Aus diesem Grund ist es auf jeden Fall ratsam neue Dateien oder sonstige Änderungen an der Struktur IMMER im Projucer zu machen! Wenn ich z.B. Änderungen innerhalb von XCode vornehme und beispielsweise ein neues C++ Sourcefile anlege und später dann mein Projucer Projekt nochmals abspeichere, werden diese Änderungen wieder überschrieben!

Beim Doppelklick auf das Modules Tab unten werden im Browser alle für dieses Projekt automatisch hinzugefügten Module angezeigt. Wenn man ein Modul anklickt, werden dementsprechend rechts im Hauptfenster die verschiedenen Einstellungen angezeigt.

Alle benötigten Module des Projekts im Überblick

Die meisten der Module benötigen wiederum andere Module, um vernünftig zu funktionieren. Wenn man nun ein Modul entfernt, von dem eventuell andere Module abhängig sind, dann wird das entsprechende Modul in rot angezeigt. Entweder man entfernt dieses Modul dann ebenfalls oder fügt das fehlende Modul wieder hinzu.

Wenn man auf das Einstellungen Icon (Zahnrad) unten klickt, sieht man die Versionen und die Pfade aller Module im Überblick. Beim Klick auf ein Modul, sieht man die Einstellungen für dieses Modul – wie oben bereits beschrieben. Hier kann man dann auch die Pfade für weitere Abhängigkeiten, wie z.B SDKs oder externe Bibliotheken, setzen. In den meisten Fällen fährt man mit den Standardeinstellungen ganz gut 😉

Unter dem Tab Exporters findet man die Einstellungen für die IDE-Projekte, die man sich angelegt hat. Es ist aber von hier aus auch möglich weitere Exports zu verschiedenen IDEs bzw. Betriebssystemen anzulegen.

Die verschiedenen Exports im Überblick

Beim Klick auf einen Exporter findet man rechts im Hauptfenster verschieden Einstellungen, wie z.B. Compiler und Linker Flags und andere plattformspezifische Einstellungen. Um einen weiteren Exporter zu erstellen klickt man einfach auf das + Zeichen unten oder über das Kontextmenü per Rechtsklick. Diese Exports können zu jedem Zeitpunkt im Entwicklungsprozess erstellt werden. Wenn man sich z.B. irgendwann entschließt die Linux-Plattform doch zu unterstützen, kann das hier im Handumdrehen geschehen. Des weiteren können natürlich auch Exports gelöscht werden.

Zum Schluß will ich noch die globalen Einstellungen des Projektes erwähnen. Beim Klick auf das Zahnrad oben neben dem Namen des Projekts, öffnen sich diese im Hauptfenster des Projucers.

Die globalen Einstellungen des Projucer Projekts

Hier können grundlegende Einstellungen des Projekts vorgenommen werden, wie z.B. der Name des Projekts sowie Versionsnummer und Firma. Neben jedem Punkt findet man links ein kleines Info-Icon, welches kurz erklärt worum es geht. Zusätzlich zum Projektnamen kann hier auch ein anderer Name für das Plugin an sich gewählt werden und man kann entscheiden, ob man Midi In- oder Output benötigt oder ob es sich bei dem Plugin um ein Instrument (Synth) handelt oder nicht. Kurzum: Hier werden alle wichtigen Einstellungen für das Projekt vorgenommen.