Or makefiles to anyone else…
This is just to make sure I can reproduce the exact builds when using Visual Studio’s IDE. The settings tend to be in dialogue boxes that require manual changes. These instructions show where to find the key changes.

Two main sections. There is the IDE settings themselves and also the projects Configuration Properties. Note that debugging is in with the IDE and not with the compiler configuration.
Further down will be a discussion on how to update Visual Studio directly via its XML files.
Now you are here…
Sorry about this, but this is really a work in progress. Comeback later when this is wrapped up. Until then it will be place to build up what settings seem right and the best way to get them set.
IDE Settings
Menu -> Tools -> Options…
C/C++
Scroll Bars: Use map mode for vertical scroll bar, Wide
Debugging
General -> Enable Just My Code (Turn off for stepping through the STL implementation.
Configuration Properties
These can also be set via putting all the values in a .props file. More on that below.
Menu -> Project -> Properties
Only use x64 (Debug and Release).
C/C++ -> Language -> C++ Language Standard -> ISO C++ 17 Standard (/std:c++17)
C/C++ -> General -> Warning Level -> EnableAllWarnings (/Wall)
C/C++ -> General -> Additional Include Directories -> “C:\…\cpp\include”
C/C++ -> General -> Treat Warnings as Errors -> Yes (/WX)
Note this is confusing as there are other locations that will also work.
- Include Directories corresponds to the environment variable
INCLUDE
. - Additional Include Directories are passed via a command line argument (i.e. the
\I
option).
C/C++ Precompiled Headers -> Not Using Precompiled Headers
TODO: Lots of other changes to get a minimal command line. I would like to justify each option. Currently at this:
/JMC /permissive- /ifcOutput "x64\Debug\" /GS /Wall /Zc:wchar_t /ZI /Gm- /Od /sdl /Fd"x64\Debug\vc142.pdb" /Zc:inline /fp:precise /D "_DEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX /Zc:forScope /RTC1 /Gd /MDd /FC /Fa"x64\Debug\" /EHsc /nologo /Fo"x64\Debug\" /Fp"x64\Debug\includeTests.pch" /diagnostics:column
Tabs and Spaces
Set files to convert to spaces.
Tabs are set to 4.
.Props XML Files to set the Build
TODO…
Mark likes to have a number of side projects on the go. Currently learning C++ and Vulkan. Other areas of interest include photography and going for walks.