wake-up-neo.com

Wie verwende ich Makefiles in Visual Studio?

Ich habe viel über Makefiles gehört und wie sie den Kompilierungsprozess vereinfachen. Ich verwende VS2008. Kann jemand bitte einige Online-Referenzen oder Bücher vorschlagen, in denen ich mehr über den Umgang mit ihnen erfahren kann?

61
chester89

Ein UNIX-Typ hat Ihnen das wahrscheinlich erzählt. :)

Sie können Makefiles in VS verwenden. Wenn Sie dies tun, werden jedoch alle integrierten Funktionen in der MSVC-IDE umgangen. Makefiles sind im Grunde das reinterpret_cast des Builders. IMO Die einfachste Sache ist die Verwendung von Lösungen.

21
John Dibling

Das Microsoft-Programmwartungsprogramm (NMAKE.EXE) ist ein Tool, das Projekte basierend auf Befehlen in einer Beschreibungsdatei erstellt. 

NMAKE Referenz

50

Um die spezifischen Fragen zu beantworten ...

Ich verwende VS2008. Kann jemand bitte einige Online-Referenzen vorschlagen oder Bücher, wo ich mehr über den Umgang mit ihnen erfahren kann?

Dieser Link gibt Ihnen eine gute Einführung in Makefiles, indem Sie ihn mit Visual Studio abbilden.

Einführung in Makefiles für Visual Studio-Entwickler

Ich habe viel über Makefiles gehört und wie sie die Zusammenstellung vereinfachen verarbeiten.

Makefiles sind leistungsfähig und flexibel, aber möglicherweise nicht die beste Lösung, um den Prozess zu vereinfachen. Betrachten Sie CMake, das den Build-Prozess gut abstrahiert, der in diesem Link erläutert wird.

CMake für Visual Studio-Entwickler

13
ap-osd

Ich verwende ein Makefile, um alle Abhängigkeiten zu erstellen, die vor dem Aufrufen von devenv erforderlich sind, um ein bestimmtes Projekt wie folgt zu erstellen:

debug: coratools_debug
    devenv coralib.vcproj /build debug

coratools_debug: nothing
    cd ../coratools
    nmake debug
    cd $(MAKEDIR)

Sie können auch das msbuild-Tool verwenden, um dasselbe zu tun:

debug: coratools_debug
    msbuild coralib.vcxproj /p:Configuration=debug

coratools_debug: nothing
    cd ../coratools
    nmake debug
    cd $(MAKEDIR)

Meiner Meinung nach ist dies viel einfacher, als zu versuchen, das übermäßig komplizierte Projektmanagementsystem für das Visual Studio herauszufinden. 

7
Jon Trauntvein

Das VS-Äquivalent eines Makefiles ist eine "Lösung" (zu stark vereinfacht, ich weiß).

4
Joel Coehoorn

Bei Makefiles und Builddateien geht es darum, Ihren Build zu automatisieren. Wenn Sie ein Skript wie MSBuild oder NAnt verwenden, können Sie Ihr Projekt oder Ihre Lösung direkt über die Befehlszeile erstellen. Dies wiederum ermöglicht es, den Build zu automatisieren, indem er von einem Build-Server ausgeführt wird.

Neben dem Erstellen Ihrer Lösung ist es üblich, dass ein Build-Skript eine Aufgabe zum Durchführen von Komponententests, Berichterstellung von Code, Komplexität und mehr enthält.

2
mmiika

Wenn Sie nach tatsächlichen Befehlszeilen-Makefiles fragen, können Sie ein Makefile exportieren oder MSBuild für eine Lösungsdatei von der Befehlszeile aus aufrufen. Was genau möchten Sie mit dem Makefile machen?

Sie können unter SO nach MSBuild suchen, um weitere Informationen zu erhalten.

1
Tim

Um es mit einer Komplettlösung zusammenzufassen ...

Es gibt zwei Möglichkeiten:

  1. Verwenden Sie NMAKE von der Developer-Eingabeaufforderung für Visual Studio

Die Verknüpfung befindet sich in Ihrem Startmenü. Schauen Sie in das Makefile, um zu sehen, ob es 'Setup'-Aktionen gibt. Aktionen werden als erstes Wort vor einem Doppelpunkt angezeigt. Normalerweise haben alle guten Makefiles eine "all" -Aktion, sodass Sie Folgendes eingeben können: NMAKE all

  1. Erstellen Sie eine Lösung und Projektdateien für jede Binärdatei.

Die meisten gut durchdachten Open Source-Lösungen bieten ein Makefile mit einer Setup-Aktion zum Generieren von Visual Studio-Projektdateien für Sie. Suchen Sie also zuerst nach diesen in Ihrem Makefile.

Andernfalls müssen Sie jede Datei oder Gruppe von Dateien und Ordnern per Drag & Drop in jedes neue Projekt ziehen, das Sie in Visual Studio erstellen.

Hoffe das hilft. 

0
justdan23