Was muss ich installieren, für C++ - Projekt / VS 2013 auf TeamCity-server oder Team Foundation Build Service?
Ich bin versucht zu bauen, ein C++ - Projekt in eine Visual-Studio-2013-Lösung auf TC 8.0.6 (build 27767).
Installiert hab ich die neuesten MSBuild "Microsoft Build Tools 2013" - Sachen (die üblicherweise als Bestandteil von VS 2013 installiert) direkt auf dem server.
Aber ich bekomme die folgende Fehlermeldung:
[17:05:23]VCTargetsPath is c:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\
[17:05:23]PlatformToolset is v120
[17:05:23]VCMessage
[17:05:23]c:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32
Microsoft.Cpp.Win32.Targets(512, 5): error MSB8008: Specified platform toolset (v120) is not installed or invalid. Please make sure that a supported PlatformToolset value is selected.
[17:05:23]Project MyCppProject\smCpp.vcxproj failed
Soweit ich sehen kann ich habe alles was ich brauche und ich habe verschiedene hacks um die PlatformToolset zu v110 etc., aber das funktioniert auch nicht.
In dieser Phase, in der ich überprüfen möchte, was genau muss ich installieren auf dem server erstellen. Kann jemand das klären, wenn ich brauche nichts extra bitte?
Vielen Dank
Brian
Verwandte: Der baut Werkzeuge für die v120 (Platform Toolset = 'v120") kann nicht gefunden werden
weitere Forschung auf diesem vermerkt als Kommentar an die Antwort auf @Wimmel 's link oben
Sie müssen installieren Sie das Windows SDK für die entsprechende version des Compilers.
Ja, Ade Miller, das habe ich versucht und dann schrittweise installiert zusätzliche Komponenten bis hin zu einer vollständigen VS 2013 installiert, die auf unsere in-house-TeamCity build-Umgebung und tut es immer noch fehlschlägt, in der gleichen Weise. Ich habe auch erprobt, die jeweils in einem VS 2010, 2012 und 2013 (mehrere .Net FX Ziele) C++ - Projekts in der visualstudio.com build service-und beobachteten den gleichen Fehler, auf die 2013 Projekte.
weitere Forschung auf diesem vermerkt als Kommentar an die Antwort auf @Wimmel 's link oben
Sie müssen installieren Sie das Windows SDK für die entsprechende version des Compilers.
Ja, Ade Miller, das habe ich versucht und dann schrittweise installiert zusätzliche Komponenten bis hin zu einer vollständigen VS 2013 installiert, die auf unsere in-house-TeamCity build-Umgebung und tut es immer noch fehlschlägt, in der gleichen Weise. Ich habe auch erprobt, die jeweils in einem VS 2010, 2012 und 2013 (mehrere .Net FX Ziele) C++ - Projekts in der visualstudio.com build service-und beobachteten den gleichen Fehler, auf die 2013 Projekte.
InformationsquelleAutor Redeemed1 | 2014-02-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Letztlich müssen Sie den richtigen Pfad zu MSBuild. Mit VS 2013, build-Werkzeuge wurde ein Teil der VS statt .NET, so dass es version 12.0 anstatt 4.0. Der Standard-Pfad ist in diesem Fall:
"C:\Program Files (x86)\MSBuild\12.0\bin"
Wenn der team foundation build kaputt ist, dann ist es wahrscheinlich, weil der TF-server nicht in der version 2013. Um das problem zu beheben, müssen Sie machen Sie sich eine Kopie der build-Vorlage der build-definition verwendet werden (vorausgesetzt, Ihre version ist >= 2010 < 2013) und zeigen Sie auf die richtigen Werkzeuge-Ordner. Die build-Vorlagen befinden sich in der folgenden Quelle-Pfad:
$/YourTeamProjectName/BuildProcessTemplates
Wenn Sie können, Bearbeiten Sie die Vorlage in Visual Studio öffnen Sie die Workflow Foundation-design-Oberfläche. Dort finden Sie die Laufen MSBuild-Projekt für Aufgaben (Hinweis: in der Standard-Vorlage gibt es mehr als einen, aber ich habe gezeigt ein Bild was zu suchen), und ändern Sie das Werkzeug Pfad-Eigenschaft auf den oben genannten Pfad.
Sobald Sie erstellt die Vorlage, die Sie brauchen, um Ihre build-definition der Verwendung der neuen Vorlage.
Für TeamCity, die Sie benötigen, um die MSBuild ToolsVersion auf die version 12.0 in Ihrem build-Schritt. Ich bin mir nicht sicher, welche version von TC gestartet-Unterstützung für version 12.
Auf den ersten dieser nicht Arbeit für mich, bis ich herausfand, dass es zwei Orte in unserer Vorlage, die wir aufrufen von MSBuild. Ich setze sowohl von denen, dann habe ich auch eingestellt "Schneidweg" unter der build-definition, Prozess Abschnitt, 4.0 Misc-Abschnitt "C:\Program Files (x86)\MSBuild\12.0\Bin". Ich bin mir nicht sicher, ob das einen Unterschied gemacht, aber die Einstellung beide MSBuilds und das hat mich aus dem Unkraut!
InformationsquelleAutor Christian Maslen