C/C++ Programmierkurs
Zurück Inhalt Vor

Benutzung von make

Wenn Programme wachsen, ist es irgendwann nicht mehr sinnvoll mit einem compile.sh immer alles neu zu übersetzen. Glücklicherweise gibt es Werkzeuge, um den Übersetzungsprozess zu automtisieren und nur Quelltexte neu zu übersetzen, wenn sich die Modifikationszeit ihrer Dateien geändert hat.

Dazu bringt der Compiler das sog. "make" Werkzeug mit. Das "make" Werkzeug erwartet eine Datei "Makefile" im aktuellen Verzeichnis, in dem alle Quelldateien aufgelistet werden. Der Benutzer muss dann nur noch "make" eingeben, um das Programm zu übersetzen, egal wie umfangreich es auch sein sollte. Es werden dann immer nur die geänderten Dateien neu übersetzt.

Die Syntax des "Makefile" ist recht komplex. pvbrowser liefert daher ein weiteres Werkzeug "fake_qmake", das es erlaubt auf einfache Weise den "Makefile" zu erzeugen.

pro-file1.png
In der Datei beispiel.pro listen wir auf, woraus das Programm gebaut werden soll
make-file1.png
fake_qmake erzeugt einem Makefile und dann brauchen wir nur noch make aufrufen
Wie wir sehen kommen bei der Übersetzung Warnungsmeldungen vom Compiler, denn wir haben in beispiel.pro die CONFIG Option warn_on eingeschaltet. Sehen Sie sich die entsprechenden Stellen in unserem Quelltext an. Sie werden feststellen, dass wir etwas geschludert haben und der Compiler absolut im Recht ist.

make-file2.png
Nach der Beseitigung der Warnings verhält sich make wie folgt

Zwei Warnings kamen aus der Funktion sendeBotschaft(). Dort haben wir die Adresse und den Absender überhaupt nicht verwendet. Das wird vom Compiler mit eine Warning bedacht. Als kurzfristige Abhilfe wurde erst mal ein if eingebaut, ob diese Adressen auch nicht gleich NULL sind (siehe Abbildung). Damit werden die Parameter verwendet und die Warnings sind verschwunden.


Zurück Inhalt Vor