error MSB8008: Specified platform toolset (v110) is not installed or invalid.

shaun_wilde's Avatar

shaun_wilde

02 Jan, 2015 12:09 AM

I am looking to use appveyor to build OpenCover but I am having an issue with platform versions

https://ci.appveyor.com/project/sawilde/opencover

[exec]   C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\Microsoft.Cpp.x64.Targets(514,5): 
error MSB8008: Specified platform toolset (v110) is not installed or invalid. Please make sure that a 
supported PlatformToolset value is selected. [C:\projects\opencover\main\OpenCover.Profiler\OpenCover.Profiler.vcxproj]

Can you let me know what toolsets are available for building c++ projects like OpenCover (i.e. the profiler part)?

  1. Support Staff 1 Posted by Feodor Fitsner on 02 Jan, 2015 12:38 AM

    Feodor Fitsner's Avatar

    Visual C++ versions from 2008-2013 are installed on build workers: http://www.appveyor.com/docs/installed-software

    Try the suggestion from here to see if that helps: https://social.msdn.microsoft.com/Forums/vstudio/en-US/09e51771-c6d...

  2. 2 Posted by shaun_wilde on 02 Jan, 2015 06:45 AM

    shaun_wilde's Avatar

    Sorry that didn't work - I also have /p:VisualStudioVersion=11.0 which should have done the same thing.

    I see C++ for 2008 and 2010 but not for 2012. I see a reference to C++ 11 CTP but I tend to steer clear of CTPs for anything over than investigation projects.

  3. Support Staff 3 Posted by Feodor Fitsner on 02 Jan, 2015 07:00 AM

    Feodor Fitsner's Avatar

    for 2012 and 2013 C++ comes with "Windows Desktop" SKU.

  4. 4 Posted by shaun_wilde on 02 Jan, 2015 07:25 AM

    shaun_wilde's Avatar

    Is that native C++ rather than .NET C++ (if that makes sense)?

  5. 5 Posted by shaun_wilde on 02 Jan, 2015 08:35 AM

    shaun_wilde's Avatar

    okay I've tried it with and without the switch and with and without the other proposed solution (environment variable) and together (4 variations).

    I also have the same problem if I try to build the 32 bit version first and then the 64 bit.

    I am at a bit of loss now - I'll keep tinkering but if you can have a look and provide additional help that would be great.

  6. 6 Posted by shaun_wilde on 02 Jan, 2015 10:22 AM

    shaun_wilde's Avatar

    Okay I managed to get a bit further by making sure I use the msbuild.exe on the PATH but now I can't find certain include files needed to build the profiler DLLs e.g. atlbase.h

    If I run the following script on my dev machine

    Get-ChildItem -Path "c:\program files (x86)" -Filter atlbase.h -Recurse -EA:ignore
    

    I get the following output

        Directory: C:\program files (x86)\Microsoft Visual Studio
        10.0\VC\atlmfc\include
    
    
    Mode                LastWriteTime     Length Name  
    ----                -------------     ------ ----
    -a---         11/8/2009   9:06 PM     198737 atlbase.h
    
    
        Directory: C:\program files (x86)\Microsoft Visual Studio
        11.0\VC\atlmfc\include
    
    
    Mode                LastWriteTime     Length Name  
    ----                -------------     ------ ----
    -a---         10/1/2012   9:52 AM     204226 atlbase.h
    
    
        Directory: C:\program files (x86)\Microsoft Visual Studio
        12.0\VC\atlmfc\include
    
    
    Mode                LastWriteTime     Length Name  
    ----                -------------     ------ ----
    -a---         3/12/2014   8:53 PM     214357 atlbase.h
    
    
        Directory: C:\program files (x86)\Microsoft Visual Studio
        14.0\VC\atlmfc\include
    
    
    Mode                LastWriteTime     Length Name  
    ----                -------------     ------ ----
    -ar--         5/12/2014   4:32 PM     214366 atlbase.h
    

    but I get no results when I get the build agent to execute the same command

  7. Support Staff 7 Posted by Feodor Fitsner on 02 Jan, 2015 06:13 PM

    Feodor Fitsner's Avatar

    Take a look at this thread: http://help.appveyor.com/discussions/problems/616-atl-based-c-proje... regarding atlbase.h.

  8. 8 Posted by shaun_wilde on 03 Jan, 2015 02:51 AM

    shaun_wilde's Avatar

    Unfortunately the atlbase.h (ATL Support) in WinDDK is old/limited and is missing functionality that is used by OpenCover wrt per-user registration.

    Is there a chance we can install a later version of ATL or is this limited by the Visual Studio licences?

  9. Support Staff 9 Posted by Feodor Fitsner on 03 Jan, 2015 03:10 AM

    Feodor Fitsner's Avatar

    Visual Studio 2013 Community edition could do a trick. Is VS 2012 (11.0) mandatory for you?

    -Feodor

  10. 10 Posted by shaun_wilde on 03 Jan, 2015 03:45 AM

    shaun_wilde's Avatar

    No but atlbase.h is not available other than in the WinDDK - as far as I can tell.

  11. Support Staff 11 Posted by Feodor Fitsner on 03 Jan, 2015 03:52 AM

    Feodor Fitsner's Avatar
  12. 12 Posted by shaun_wilde on 04 Jan, 2015 03:01 AM

    shaun_wilde's Avatar

    I don't know - possibly - atlbase.h has always been available to me so I've never had to look elsewhere - the one available on appveyor is from the WinDDK and it's missing some useful pieces for working with COM registration but unlikely to be used by anyone writing a device driver.

    If the above update was installed and then when atlbase.h was opened if the function AtlSetPerUserRegistration was available then I would say that was a win.

    I already have atlbase.h with that method available but in the location I mentioned in an earlier post.

    I'll see if I can replicate the build scenario locally as well

  13. 13 Posted by shaun_wilde on 04 Jan, 2015 03:34 AM

    shaun_wilde's Avatar

    I've just installed the above update and I am afraid no atlbase.h :( - Where did you download the WinDDK from that you use on your build agents? I am going to have to see if I can build with that locally and implement the functionality I require in a different way.

  14. Support Staff 14 Posted by Feodor Fitsner on 04 Jan, 2015 04:09 AM

    Feodor Fitsner's Avatar

    Yeah, I see. Seems the last WDK coming with ATL was 7.1. After that it was removed and made part of Visual Studio: http://msdn.microsoft.com/en-us/library/windows/hardware/dn641605(v...

    It seems Visual Studio 2013 Community is the way to go. Will deploy it on "unstable" image and let you know when it's ready for testing.

  15. 15 Posted by shaun_wilde on 04 Jan, 2015 05:34 AM

    shaun_wilde's Avatar

    thanks

  16. Support Staff 16 Posted by Feodor Fitsner on 05 Jan, 2015 10:46 PM

    Feodor Fitsner's Avatar

    OK, the image has been updated. Now unstable image contains Visual Studio 2013 Community Edition. Switch your solution/projects to VS 2013 and you should be fine: https://ci.appveyor.com/project/appvyr/opencover/build/1.0.3

    You can choose unstable image on UI - "OS" on Environment tab of project settings or in appveyor.yml:

    os: unstable
    

    Let me know about results.

  17. 17 Posted by shaun_wilde on 06 Jan, 2015 11:41 AM

    shaun_wilde's Avatar

    Awesome - it works :)

    https://ci.appveyor.com/project/sawilde/opencover/build/1.0.23

    Now I can tinker with the next stages :)

    Will the Community version o VS2013 be rolled out to everyone or will I have to keep using unstable for the time being?

  18. Support Staff 18 Posted by Feodor Fitsner on 06 Jan, 2015 06:02 PM

    Feodor Fitsner's Avatar

    Very well, thanks for the update!

    "Unstable" is there for everyone. It's like we have "stable" (default one or Windows Server 2012 R2), "unstable" (installing new stuff there - and it's mostly for C++/MinGW people) and VS 2015 Preview.

  19. 19 Posted by shaun_wilde on 06 Jan, 2015 10:04 PM

    shaun_wilde's Avatar

    okay - will the VS2013 CE be added to stable at some point in the future or will it only be on unstable?

  20. Support Staff 20 Posted by Feodor Fitsner on 06 Jan, 2015 10:05 PM

    Feodor Fitsner's Avatar

    Will be added to stable for sure.

  21. 21 Posted by shaun_wilde on 07 Jan, 2015 11:43 AM

    shaun_wilde's Avatar

    awesome will keep an eye out - thanks for the help

  22. shaun_wilde closed this discussion on 07 Jan, 2015 11:43 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac