Ralf Corsepius wrote:
Meine (zugegeben launische) Anmerkung bezog sich darauf "eigene, händisch geschriebene" Makefiles statt "durch ein Tool generierte" Makefiles zu verwenden:
im weitensten Sinn Ack (wobei ein verständnis für Makefiles nicht verkehrt ist und daher auch ein manuell geschriebenes zu Anfang helfen kann.
* Ab einer gewissen Projektgrösse werden "eigene Makefiles" in der Regel _schnell_ derart komplex, dass man praktisch keine Chance hat, diese Komplexität auch nur annähernd zu bewältigen.
nicht unbedingt, man muss nur mehr Zeit investieren, aber dafür gibts ja die Tools ;)
Tools (z.B. automake) erzwingen eine Systematik, die nicht auf dem Know-How eines Einzelnen beruht.
ACK
* Verwendet man Tools, erhält man als Seiteneffekt oft (Makefile/Projektkonfigurations-) Features, die ein Projekt momentan zwar nicht braucht, sich längerfristig aber auszahlen. In bez. auf automake ist dies z.B. Portabilität.
NACK. Ich habe hier ein Beispiel vor mir liegen, ein C++-Projekt, ca 100.000 Zeilen Code und viele statische Libs und noch mehr Source und Headerfiles. Historie: das Programm wurde mit KDEStudio Gold gebastelt (autoconf/aufotmake) (Version weiss ich jetzt nicht auswendig, aber die 'ältere') und zum einen lässt es sich unter einer aktuellen Linux Distri (z.B. Suse 9 nicht erstellen!) und auch auf dem ursprünglichen Rechnerpark geht nix meht :( da wurde zwischenzeitlich autoconf/automake aktualisiert.... ich kann die Fehlermeldung jetzt nicht nachsehen, aber solltest Du einen guten Link haben, in dem die _manuelle_ Portierung der alten Autoconf/automake Dinger auf die neue Version beschrieben ist, würde ich um einen link bitten.
wenn man in dem Projekt ausschließlich Qt verwendet ist qmake keine schlechte Wahl:
Es ist zumindest ein Tool und damit "händisch geschriebenen" Makefiles überlegen.
Ob es mehr als eine Qt-spezifische, proprietäre Insellösung und "temporäre Erscheinung" ist, wird die Zukunft weisen müssen.
hmm, durch die Verbindung KDE/Qt würde ich da nicht so viel Angst haben, denn die Vorteile spielt Qt da aus, wo autoconf und co aufhören. Insbesondere Plattformübergreifend ist es _sehr_ sinnvoll, da die Scriptdateien sehr einfach gehalten sind, sind sie zudem noch einfacher manuell zu überprüfen als autoconf/automake Dinger.
Wie leistungsfähig es wirklich ist, kann ich nicht beurteilen, da ich noch nie den Bedarf gesehen habe, qmake verwenden zu wollen.
ich finde es _sehr_ gut, insbesondere da ich häufig MS/Linux Portabilität brauche und dafür auch Qt einsetze, als Alternative könnte man noch cmake ins Rennen schicken, da habe ich mit der vtk auch noch keine Probleme gehabt und ist ebenfalls sehr portabel.
Ein Punkt bleibt: Nahezu jedes "Projekt/Buildscript/Makefile-Generierungstool" ist händisch geschriebenen Makefiles/Scripten _weit_ überlegen.
solange ich es nicht manuell anpassen muss, hier haben einige Tools vorteile gegenüber anderen.... Andreas