Wie verwende ich ein externes Build-System für ein Visual C ++ 2013-Projekt?

Ist es möglich ein @ zu benutzexternal build system für VC ++ 2013? Ich möchte, dass Visual Studio nur durch Aufrufen meiner Build-Tools erstellt.

Ich denke über so etwas nach:

Alle Build-Befehle in Batches eingeben.ufen Sie einen Build-Batch auf Projektebene auf, indem Sie mit der rechten Maustaste auf das Projekt klicken und Build auswähle

ufen Sie den Build-Batch auf Lösungsebene auf, indem Sie mit der rechten Maustaste auf die Lösung klicken und Build auswähle

Ist da ein Tutorial? Ich habe viel gesucht, aber kein Glück.

ADD 1 - Einige Fortschritte ...

Nach kurzem Lesen über dasMSBuild Prozess, ich habe versucht, wie unten.

Zunächst bearbeite ich das*.vcxproj Projektdatei. Ich ändere dasDefaultTargets vonBuild zuMyTarget.

<Project DefaultTargets="MyTarget" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

Dann füge ich ein neues Ziel mit dem Namen @ hinMyTarget:

  <Target Name="MyTarget">
    <Message Text="Hello, Bitch!" />
  </Target>

Ich hoffe, dies kann den eingebauten VS2013-Prozess umgehen und nur meine eigene Charge ausführen.

Es funktioniert gut an der Eingabeaufforderung:

Aber in Visual Studio, wenn ich mit der rechten Maustaste auf das Projekt klicke und @ wähbuild Befehl, es gibt mir eine Menge Link-Fehler.

Wie vermeide ich diese Linkfehler? Da mein Stapel den gesamten Erstellungsprozess übernehmen kann, brauche ich kein Visual Studio, um den Link für mich zu erstellen.

ADD 2

Es scheint, dass diese Link-Fehler angezeigt werden, weil ich das*.c Dateien mit demClCompile tag als unten.

<ItemGroup>
   <ClCompile Include="z:\MyProject1\source1.c" />
<ItemGroup>

Da ich nicht möchte, dass VS2013 den Compiler aufruft, ändere ich ihn auf<ClInclude> tag, die Link-Fehler sind verschwunden, aber die Symbolauflösung funktioniert nicht ... Scheint, ich sollte das Tag nicht ändern.

ADD 3

Hier ist eine andere Möglichkeit zum Kompilieren ohne Verknüpfen.

Ist es für Visual Studio C ++ möglich, Objekte ohne Verknüpfung zu kompilieren

Scheint, dass es kein Problem mit der Symbolauflösung gibt. Ich kann jedoch immer noch keinen externen Stapel durch Klicken auf @ aufrufebuild/rebuild/clean.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage