Visual Studio 2013 and Cmake? - visual-studio

I have been using 2010 on a project. The project was built using cmake, when cmake chose to use the compiler Visual Studio 2010. Now I intend to move the whole set up of the project to Visual Studio 2013.
So, today I installed Visual Studio 2013. But when I try to use cmake to build the project for visual studio 2013, in the compiler list of cmake I cannot see any compiler of Visual studio 2013, the latest are Visual Studio 2012, Visual Studio 2012 win64, Visual Studio 2012 ARM.
Is there no exclusive compiler for Visual Studio 2013? Does the same compiler work for both VS2012 and VS2013? If Visual Studio 2013 indeed has an exclusive compiler, why can't cmake find the that compiler?
Thanks.

Try updating your CMake version.
The Configue dialog in cmake-gui for CMake 3.1 lists the respective entries as Visual Studio 12 2013:
In older CMake versions (older than 3.0) the entries omitted the year and showed only the version number, so the entry just reads Visual Studio 12.
If your CMake version is even older, there might not be support for Visual Studio 2013 at all. However, you should still be able to open project files generated for an older Visual Studio version. This might require an additional conversion step by Visual Studio, which might mess things up.
Upgrading CMake is definitely the preferred solution.

Related

Where do the toolsets such as "Visual Studio 2019 (v142)" live?

My question is where do the toolsets such as "Visual Studio 2019 (v142)" live?
I'm not sure whether the answer I will get now for my question would be different than if I asked it before May 2021 and the first Visual Studio 2022 release since it is a 64-bit program and so its files live under a different folder tree entirely.
If I perform a build in Visual Studio 2019 then it will be looking in a different place for this v142 toolset than if I run the same project in Visual Studio 2022.
I have found that for some reason the Visual Studio 2022 17.3.0 Preview does not generate the /JMC switch when under Win32 builds using the v142 toolset.
I would be interested to know where these things get stored so that I could compare them.

How to select the Visual Studio version to use on the build machine?

We have a buildmachine that currently has installed Visual Studio 2010 to compile our application.
Now we have moved to Visual Studio 2015 and developers have installed it on their machines and modified the solution so it works with 2015 but the previous versions will continue to build with 2010.
I was going to install Visual Studio 2015 on the build machine but I don't know how the build machine will know that the previous branches must be built with 2010 and the new ones with 2015. With some Msbuild settings? Just looking at the sln? By other means?
With some Msbuild settings? Just looking at the sln? By other means?
Open your .sln file with Notepad. Look for Format Version on the first line which correlates with a Visual Studio version.
•Format Version 11.00 is Visual Studio 2010
•Format Version 12.00 is Visual Studio 2013 && Visual Studio 2013
For visual studio 2013 and visual studio 2015, we could find the visual studio version on the third line. like this:
visual studio 2013: VisualStudioVersion = 12.0.30501.0
visual studio 2015: VisualStudioVersion = 14.0.25420.1
As far as I know it does it looking at the ToolsVersion on every .csproj. VisualStudio is not required as MsBuild and the compiler come with the .Net Framework.

visual studio 2010 with cpp build tools 2015

Is it possible to compile and debug full c++11 code with visual studio 2010 ?
Is it possible to change the compiler of visual studio 2010 to use visual cpp 2015 build tools ?
Is it possible to compile and debug full c++11 code with visual studio 2010?
No, visual studio 2010 contain C++11 features, but not all of them, Here is a list of what features it supports (as well as VC++ 2015), I suggest that you could use visual studio 2015, which contain most of the features instead of Extended integer types
https://msdn.microsoft.com/en-us/library/hh567368.aspx
Is it possible to change the compiler of visual studio 2010 to use visual cpp 2015 build tools ?
No, it is impossible, we can only select low-level Platform Toolset (such vs2008). So I suggest you could visual studio 2015.

Why the massive overhead in a visual studio install

I install visual studio 2013 ultimate on a x64, and i get with is components from 2005 and a whole bunch for x86 ?!
Microsoft Visual C++ 2005 redistributable x86
It also , if i am not mistaken, gives me a version of visual studio 2010 as well as tooling and files only associated for those versions. There was no option to negate this. Do i really need all of this?

"clean" error with CUDA 5.5 in Visual Studio 2010 Express

I have been using Visual Studio 2010 Express for my CUDA-related development. Recently, I upgraded from CUDA 5.0 to 5.5. When I did so, I discovered what is seemingly an odd bug: whenever I go to clean (or to rebuild) my VS project, I get an error related to nvcc:
nvcc : fatal error : nvcc cannot find a supported version of Microsoft Visual Studio. Only the versions 2008, 2010, and 2012 are supported
I get this same error on multiple independent projects whenever I try to clean them. The error goes away if I use Visual Studio 2010 Professional.
I was wondering if anyone else has come across this error, and, if so, are there any workarounds (other than switching to VS 2010 Professional)?
Thank you,
Aaron
According to the release notes for CUDA 5.5, Visual Studio 2010 Express is not supported. The supported versions of Visual Studio are:
Compiler IDE
Visual C++ 11.0 Visual Studio 2012
Visual C++ 11.0 Visual Studio 2012 Express (32-bit)
Visual C++ 10.0 Visual Studio 2010
Visual C++ 9.0 Visual Studio 2008

Resources