Frage

Ich bin ein sehr häufige Benutzer der GNU Autotools (meist Autoconf , gelegentlich m4 . Ich habe dieser in meinem Posteingang von nicht eine, sondern vier Personen:

m4 NICHT Lisp ist, verdammt noch mal!

Wie auch immer, vielleicht könnte jemand etwas Python oder PHP-basierte empfehlen? Ich arbeite an dem C-Ende eines viel größeren Baumes; Ich kann sicher sein, entweder Python oder PHP 5 vorhanden sein wird, da sie Voraussetzungen sind.

War es hilfreich?

Lösung

Ich habe gute Dinge gehört über CMake , die die gleichen Probleme zu lösen versucht. Hier ist der Wikipedia-Artikel

Andere Tipps

Ich nehme die Chance Downvoted werden, aber ich muss zugeben, dass leider gibt es keinen wirklichen Ersatz für Autotools. CMake, SCons, bjam ist schön, aber, wenn es um die ernsthafte Arbeit kommt ... es ist ganz klar, dass Autotools überlegen sind, nicht weil CMake kann die gleiche Sache nicht tun, sondern weil es einfach viel schwieriger, mit ihm zu tun, .

Zum Beispiel CMake, die populärste Alternative zu Autotool, hat die folgenden Nachteile:

  • Keine Unterstützung von gettext. Dies kann ein echtes Problem sein, wenn Sie eine Menge von Übersetzungen und übersetzte Quellcode verwalten müssen.
  • Keine Unterstützung für ein Deinstallation Ziel. Es ist sehr unangenehm, um herauszufinden, dass Sie das Programm nicht deinstallieren können Sie installiert haben.
  • Keine automatische Build von beide geteilt und statischen Bibliotheken.
  • Dokumentation ist sehr begrenzt und schlecht.

Und so weiter.

Es gibt viele andere Punkte. Leider gibt es keine wirklichen hohe Qualität Ersatz für Autotools. Auf der anderen Seite, wenn Sie auf Windows und für Visual Studio entwickeln, dann können Sie nicht Autotools verwenden und Sie müssen CMake wählen, die solche Werkzeuge zur Verfügung stellt.

Ich habe gute Erfolge hatte mit SCons . Es ist mit Python gebaut und der Build-Skripte ist eigentlich Python-Skripte selbst, die ein hohes Maß an Ausdruckskraft verleiht. Von der Webseite:

  

SCons ist ein Open-Source-Software Bau-Tool, das heißt, ein Next-Generation-Build-Tool. Betrachten Sie SCons als verbesserten, plattformübergreifenden Ersatz für den klassischen Make Dienstprogramm mit integrierten Funktionalität ähnlich autoconf/automake und Compiler-Caches wie ccache. Kurz gesagt, ist SCons ein einfacher, zuverlässiger und schneller Weg, um Software zu bauen.

Es gibt viele verschiedene alternative Makefile-Generatoren und Systeme bauen da draußen:

Auch, aber nicht stringent gezielt auf C / C ++:

Aber nach all dieser Auflistung, Autotools haben den großen Vorteil, keine andere Abhängigkeit für den Endbenutzer erforderlich ist. Ein Configure-Skript wird nur dann erzeugt, wenn durch den Entwickler und erfordert nicht etwas Besonderes auf dem Benutzerende, da es ein Shell-Skript ist. Die oben aufgeführten Tools haben, bevor jemand installiert werden können Ihre Quelle bauen und sie könnten sogar Abhängigkeiten selbst.

Wie wäre es einfach rel="noreferrer"> Stellen und pkg-config ?

Hier ist ein Makefile-Vorlage den Start.

Weniger ist mehr Menschen.

Eine weitere auto * Ersatz - mk-configure . Docs hier werden kann

Ich habe einen Blick auf CMake hat, die wie eine gute Alternative sieht, wenn Sie Quer Compilierung sind. Wenn Sie ein neueres Kompilation tun, sollten Sie es versuchen

Es gibt eine Python-Version von make an Mozilla erstellt werden - pymake - die unterstützt vermutlich plattformübergreifende Verwendung

.

Für den Aufbau C / C ++ Software von ANT oder maven Sie interessiert sein könnten in Terp . Es enthält eine portable C ++ Compiler Aufgabe, die mit vielen C ++ Compiler auf vielen Plattformen arbeitet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top