2009-07-29 12 views

Antwort

6

Die beste Tutorial, das ich für Makefiles gefunden haben, so hat sich weit this one gewesen. Eine Ihrer anderen Optionen ist es, Autotools zu lernen und sie Ihre Makefiles für Sie erstellen zu lassen, obwohl ein etwas veraltetes this das Tutorial ist, von dem ich am besten gelernt habe.

+2

FYI: CMake erzeugt auch Makefiles und ist einfacher und weniger zerbrechlich als die Autotools. Sie finden ein Tutorial dafür unter http://www.lazycodemonkey.com/?p=46=1 und das Handbuch der CMake-Befehle unter http://www.cmake.org/cmake/help/cmake2.6docs.html . Um CMake zu verwenden, müssen Sie nur eine "CMakeLists.txt" -Datei erstellen und die entsprechenden Befehle hinzufügen (mit Hilfe des Handbuchs). –

+0

Der Hauptlink (makefilehowto) ist unterbrochen. – JonnyJD

+0

Fügen Sie einfach www. an der Vorderseite des Links, so ist es www.wlug.org.nz/MakefileHowto. Diese Seite ist genau das, wonach ich gesucht habe. –

3

Dies alles, was Sie brauchen: make

+0

Insbesondere [http://www.gnu.org/software/make/manual/make.html](http://www.gnu.org/software/make/manual/make.html) ist, dass Sie alle brauchen. – Aust

8

Sie könnten auch diese tutorial by example verwenden. Es bietet sehr einfache Beispiele, die für einfache Projekte funktionieren.

2

Während es gut und gut ist, dass Sie lernen, ein Makefile zu lesen und zu schreiben, empfehle ich dringend, dass Sie CMake für Ihre C/C++ - Builds verwenden, anstatt Ihr eigenes Makefile zu schreiben. Es ist sehr schwierig, ein tragbares Makefile zu erstellen, weshalb die C++ - Community von handgefertigten Makefiles auf die Verwendung der GNU-Autotools (Automake, Autoconf, Autoheader, Autoreconf, Libtool, etc.) umgestellt hat Autotools ließ viel zu wünschen übrig, was in der Schaffung von CMake resultiert, das schnell das Erstellungswerkzeug der Wahl für die C/C++ Gemeinschaft wird. Es wurde bereits von einer growing list of projects einschließlich KDE angenommen.

+0

"die Schaffung von CMake, das sich schnell zum Werkzeug der Wahl für die C/C + + - Community entwickelt" Ich höre das immer wieder, und ich stoße immer wieder darauf. Vielleicht verwende ich nur die falsche Software, aber könnten Sie auf ein Beispiel zeigen? – dmckee

+1

Ich habe bereits einen Link zu einer Liste von Projekten gegeben, die CMake für ihren Build-Prozess verwenden. BOOST experimentiert gerade mit CMake (sie haben immer noch ihren alten Build-Mechanismus, aber jetzt haben sie einen CMake-Build, der letztendlich ihren JAM-basierten Prozess ersetzen wird), mit KDE4 hat KDE auf CMake, das Robotics Operating System (ROS), umgestellt verwendet CMake ausgiebig, und ich bin mir ziemlich sicher, dass Mesa3D (eine freie Implementierung von OpenGL) jetzt CMake verwendet. All das sind riesige C/C++ - Projekte oder Dachprojekte, und die Liste wächst weiter. –

+0

Siehe auch: http://www.lazycodemonkey.com/?p=46=1 –