V120 (Platform Toolset = 'v120') için derleme araçları bulunamıyor


103

Visual Studio 2012'yi Windows 8 x64'te kullanmak kesinlikle msbuild'in .net'e taşınmasından kaynaklanıyor, ancak henüz nasıl düzelteceğimi görmedim.

4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform.targets(44,5): error MSB8020: The builds tools for v120 (Platform Toolset = 'v120') cannot be found. To build using the v120 build tools, either click the Project menu or right-click the solution, and then select "Update VC++ Projects...". Install v120 to build using the v120 build tools.    
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform.targets(44,5):
error MSB8020: The builds tools for v120 (Platform Toolset = 'v120') cannot be found. To build using the v120 build tools, either click the Project menu or right-click the solution, and then select "Update VC++ Projects...". Install v120 to build using the v120 build tools.    
5>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform.targets(44,5): error MSB8020: The builds tools for v120 (Platform Toolset = 'v120') cannot be found. To build using the v120 build tools, either click the Project menu or right-click the solution, and then select "Update VC++ Projects...". Install v120 to build using the v120 build tools.

1
CLI ipucu: Tercih edilen herhangi bir çözümü oluşturmak için PlatformToolset, onu şu şekilde geçersiz kılabilirsiniz (VS2013): "\Program Files (x86)\MSBuild\12.0\Bin\MSBuild" .\path\to\MySolution.sln /p:PlatformToolset=v120(PowerShell'de iseniz, &öncesine koyun \Progr..). VS2015 için, olacak "\Program Files (x86)\MSBuild\14.0\Bin\MSBuild"ve /p:PlatformToolset=v140böylece vb.
Vulkan kuzgun

Yanıtlar:


73

http://en.wikipedia.org/wiki/Visual_C++

V110 olan Visual C ++ 2012 kullanıyorsunuz. v120, Visual C ++ 2013 anlamına gelir.

Dolayısıyla, araç seti v110'u kullanmak için proje ayarlarını değiştirirsiniz veya bu makineye Visual Studio 2013 yükler ve derlemek için VS2013'ü kullanırsınız.


70
Ama, ama ... Makinemde VS 2013 kurulu olmasına rağmen bu hatayı alıyorum!
Tim Lovell-Smith

5
Bunu çözdünüz mü? Ben de benzer bir sorun yaşıyorum. TFS Team Build'tan derlersem, aynı hatayı alıyorum. Ancak, VS 2013 IDE'den ve VS 2013 komut isteminden iyi bir şekilde oluşturabilirim.
Ike Starnes

TFS Derleme Sunucularında yüklü yazılımların listesini burada kontrol ettim: listofsoftwareontfshostedbuildserver.azurewebsites.net bunun işe yarayacağını düşündüğüm yer (Bunun oluşturulması gerektiğinden şüpheleniyorum ama henüz denemem gerekmiyor). VS 2013'ün aslında kurulu olmadığını, sadece bazı kısımlarının kurulu olmadığını not ediyorum.
Redeemed1

6
VS 2013'ü derleme sunucusuna kurdum ve hala sorun yaşıyorum.
Redeemed1

4
Çözümünüzün birden çok projesi olabileceğini unutmayın. Bu nedenle, projeye sağ tıklayarak (çözüm değil) -> Yapılandırma Özellikleri-> Genel-> Platform Araç Seti (bu VS2013'te)
piksel

84

VS2013'ü yüklediyseniz ve bu hatayı alıyorsanız, yanlış MSBuild'i çalıştırıyor olabilirsiniz. VS2013 ile Microsoft artık MSBuild'i Visual Studio'nun bir parçası olarak içermektedir. Ayrıntılar için bu Visual Studio blog gönderisine bakın.

Özellikle, ikili dosyaların yeni konumuna dikkat edin:

32 bit makinelerde şu konumlarda bulunabilir: C: \ Program Files \ MSBuild \ 12.0 \ bin

64 bit makinelerde 32 bit araçlar şu şekilde olacaktır: C: \ Program Files (x86) \ MSBuild \ 12.0 \ bin

ve C: \ Program Files (x86) \ MSBuild \ 12.0 \ bin \ amd64 altındaki 64 bit araçlar

MSBuild girişi %WINDIR%\Microsoft.NET\Framework\VS2013 (v120) platform araç setini tanımıyor gibi görünüyor.


2
OP'de anlatılanla aynı sorunu yaşadığımda bu yanıt benim için doğru yanıt oldu.
Boinst

12
MSBuild yolunu nasıl değiştirirsiniz?
rharrison33

Ne yapmaya çalışıyorsun
Kevin Richardson

2
@ rharrison33 Bir VS2013 komut istemi kullandığımda, msbuild'in doğru sürümü kullanıldı. VS2012 komut istemini çalıştırmak yanlış msbuild konumunu kullandı. VS2013'ün neden bir VS2012 komut istemi yüklediğinden tam olarak emin değilim, ama dikkat edilmesi gereken bir şey ...
Jim Geurts

1
V120 araç seti ile oluşturmak, kullandığım zaman bir VS2012 komut isteminde benim için çalışıyor C:\Program Files (x86)\MSBuild\12.0\bin\MSbuild.exe.
Kevin Richardson

69

görsel 2012 kullanıyorsanız proje adına sağ tıklayın -> özellikler -> yapılandırma özellikleri -> genel -> platform araç seti -> Visual Studio 2012 (v110)


1
Bu benim durumumda çözdü. VS2013'ü kullanmayı denedim, sonra VS2012'ye geri döndüğümde bu sorunla karşılaştım. Çözümdeki her proje için bunu yapmanız gerektiğini unutmayın.
J. Peterson

Çözümü ve talimatları içeren bu gönderi çok açık ve takip etmesi kolay .. Çok kötü 2012, v110 sorununu düzelttikten sonra hala bana bir yığın hata veriyor .. 2013'te aynı C kodunu sorunsuz çalıştırabiliyorum, ancak 2012 hala hataları bulmayı başarabilir. 2012 kodlamayı yavaşlatıyor, bu yüzden şimdi sadece 2013'ü kullanıyorum.
T. Webster

Değişen Platform Araç Seti ve Windows SDK Sürümü. Çalıştı!
Fırat Esmer


7

Kevin ve Lex'in cevaplarını eklemek için:

Hem geliştiricilerin hem de derleme sunucusunun Visual Studio 2013'e sahip olduğu işte benzer bir durum yaşadık. Çözümümüz bir VS 2013 C ++ projesine sahipti ve geliştiricinin makinesinde veya IDE içindeki derleme sunucusunda oluşturulduğunda iyi derlenmişti. Sorun, TFS derleme tanımlarını kullanarak derlemeleri tetiklerken ortaya çıktı. 12.0 yerine hala eski bir yapı şablonu (sürüm 11.1) kullanıyorduk. Neyse ki, şablon xaml dosyasına yapılan basit bir öznitelik eki sorunu çözdü. Sıra bölümünde "Projeyi Derleyin", ile başlayan bir xaml düğümü vardır.

mtbwa:MSBuild CommandLineArgument=....

Bir "Araç Yolu" özniteliği ekleyebilir ve bunu, Kevin'in cevabına göre, çağırmak istediğiniz MSBuild.exe'nin doğru yoluna işaret edebilirsiniz. Örneğin:

ToolPath="C:\Program Files (x86)\MSBuild\12.0\Bin"


4

Bunun için 4+ saati boşa harcadım.

Ben Visual Studio 2017 Şirket , projelerinden biri hata aşağıda bulunmaktadır:

V120 (Platform Toolset = 'v120') için derleme araçları bulunamıyor

Yukarıdaki hatayı çözmek için aşağıdakilerin tümünü yüklemeyi denedim:

Ancak yukarıdakilerin hiçbiri işe yaramadı.

Daha sonra Visual Studio 2013 Ultimate yükledikten sonra her şey yolunda gitti.

Görünüşe göre, eski Visual Studio bunu çözmek için bir zorunluluktur.

Umarım yardımcı olur.


3

Bir VS2013 C ++ proje VS2015 açıldı ve "V120 için inşa araçları ... bulunamayan" hakkında uyarılarla zaman, ben sadece düzenlemek için .vcxproj dosyası ve değişime ihtiyaç <PlatformToolset>v120</PlatformToolset>için <PlatformToolset>v140</PlatformToolset>ve yakın ve çözüm yeniden açmak .


1

VS 2012'de "SMB2 oluşturulmayacak: Hata 1 hatası MSB8020: Visual Studio 2010 için derleme araçları (Platform Toolset = 'v100') bulunamıyor. V100 derleme araçlarını kullanarak derlemek için Proje menüsünü tıklayın veya çözüme sağ tıklayın ve ardından "VC ++ Projelerini Güncelle ..." öğesini seçin. Visual Studio 2010 oluşturma araçlarını kullanarak derlemek için Visual Studio 2010'u yükleyin. "

Rüzgara dikkat ederek, öneriyi denedim: Solution Explorer'da Solution'ı seçtim, sonra "Update VC ++" menü maddesine tıkladım. Bu biraz güncelleme yaptı ve ardından başarılı olan bir yapı başlattı.

"Update VC ++" menü öğesi artık çözüm menüsünde görünmüyor.


1

VS 2013 topluluk Güncellemesi 5'i kaldırıp VS 2015 topluluk sürümüne geçtiğimde benzer bir sorun yaşadım

ve doğru msbuild araç setine sahip olmadıklarından ve takılı olsalar bile takılı olmayan emülatörlerden şikayet ettiği windows phone 8.1 projelerinde edinilen sorun.

Sorunun kaynağının, kaldırma işlemi kontrol panelinden sorunsuz geçmesine rağmen, benim için her şeyi karıştıran, son kaldırmanın bıraktığı VS 2013 topluluk ayarları olduğunu biliyorum.

Kalan dosyaları kaldırmak için elimden geleni yaptım ama her zaman bir şeyler kaldı.

ve sadece benim için düzelten şey, yeni bir Windows 10 x64 kurulumu ve ardından VS 2015 topluluk sürümünü yükledikten sonra ve işte bu kadar !! benim için daha fazla hata yok ve wp8.1 emülatörü de iyi çalıştı!

Benim durumumda, önceki görsel stüdyo kurulum ayarlarının benim için her şeyi karıştırdığından tamamen eminim ve VS 2013 topluluk dosyalarını ve ayarlarını bulduğum ve tamamen silmeye çalıştığım için bunun bedelini ödemem ve yeniden yüklemem gerekti. işletim sistemim.

Son visual studio yükleme dosyalarını tamamen silmenin bir yolunu bulabilirseniz, işletim sisteminin yeniden yüklenmesini önleyebilirsiniz.

Not: Bu çözümü yalnızca mümkün olan her yolu denedikten sonra deneyin (işletim sistemi yeniden yükleme), sonra hiçbir şey işe yaramazsa ve ancak o zaman ... bu çözümü son çare olarak yapın.


Yeni bir VS 2015 Community yüklemesiyle bu hatayı alıyorum . Microsoft, x64 için doğru yollara sahip değil.
Michaelangel007

0

VS2013'te, tüm projeleri doğru derleme araçlarına ayarlamak için, çözüm gezgininde çözüme sağ tıklayıp "Yeniden hedefleme çözümü" nü seçebilirsiniz. Tüm programları değiştirecek (açılan iletişim kutusundaki onay kutusu ile kontrol ettiğiniz her şey), böylece hata ortadan kalkacaktır.


Bunu denedim. VS Community 2015'teki durumumda yardımcı olmuyor.: - /
Michaelangel007

0

Benim durumumda, bir Visual 2013 sln dosyasına çift tıkladım ve Visual 2012 açıldı (Visual 2013 yerine). Visual 2012 ile derlemeye çalışırken, Platform Araç Seti "v120" olarak ayarlanmış bir proje yukarıda bahsedilen hatayı gösterdi. Ancak, Sln'yi Visual 2013 ile yeniden açarak, Platform Araç Seti "Visual Studio 2013 (v120)" olarak ayarlandı - lütfen bu sefer tam adı not edin -, aslında işi benim için yaptı. Proje şimdi iyi derleniyor.


0

VS2015'te USBView projesi oluştururken aynı hatayı alıyordum. Bu hatayı, "Visual Studio 2015 (v140)" için 'Platform Araç Seti' ayarlarını seçip çözüme sağ tıklayarak (VS2015'te) ve 'Yeniden Hedefleme Çözümü'nü seçip bu iletişim kutusunda 10.0.10240.0'ı seçtim.

Görünüşe göre microsoft'tan ProjectUpgradeTool var, bu da eski projeleri VS2012 VS'yi yayınlamak için yükseltmek için dönüştürdüğü varsayılıyor, ancak bu aracı makinemde bulamadım.

Hala bunun yardımıyla bazı yeni bağlayıcı hatalarını düzeltmem gerekiyor .


0

Benzer bir problemim vardı. Bir c ++ uygulaması oluşturan VS 2015 Topluluğu (MSBuild 14), VS 2010 (v100) araçlarını kullanmak istedi. Hepsi msbuild'e geçersiz bir yapılandırma seçeneği vererek geldi. Garip.

Bu nedenle, tüm bu seçenekleri ve parametreleri yeniden kontrol edin.


0

Cmake, JUCE, vb. Gibi make üreteçlerini kullanırsanız, doğru bir VS sürüm hedefi (2013, 2015, 2017) belirlemeye çalışın ve çözümü yeniden oluşturun.


0

Projenin bir kısmını inşa ederken ben de aynı sorunla karşılaşıyordum.

Visual Studio 2015 IDE kullandım, orada iyi çalışıyordu ama PowerShell betiğinden derleme verirken, "v140 için derleme araçları (Platform Toolset = 'v140') bulunamıyor." hata

Sonuç olarak, ilgili proje için yanlış MSBUILD exe'ye işaret etme sorunu oldu.

Daha önce $ MSBUILD = "C: \ windows \ Microsoft.NET \ Framework \ v4.0.30319 \ MSBuild.exe'yi işaret ediyordum

Betiği $ MSBUILD = "C: \ Program Files (x86) \ MSBuild \ 14.0 \ Bin \ MSBuild.exe" yi gösterecek şekilde güncellediğimde derleme başarılı oldu

Bu nedenle sorunu çözmek için lütfen doğru MSBUILD kullandığınızdan emin olun.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.