Thanks everyone. I fully understand about compilers being on PATH or setting the CMAKE_<LANG>_COMPILER variables. However, what is really important is the system introspection done by CMake to find the IDEs when you select the visual studio generators. I was hoping that logic could be shared. This would save a lot of work in setting up environment and/or hunting down vcvars batch files.
On Wed, May 22, 2019 at 10:44 AM Michael Ellery <mellery...@gmail.com> wrote: > > > > > On May 22, 2019, at 6:58 AM, Robert Dailey <rcdailey.li...@gmail.com> wrote: > > > > From the command line, I want to generate Ninja build scripts that > > utilize a specific version of MSVC compiler. Basically I'd like the > > combination of `-G"Visual Studio 15 2017"` with regards to its ability > > to find the C and C++ compiler on the system via registry/environment > > variables, and `-G"Ninja"` with regards to it being the build driver > > for that compiler. > > > > Is this even possible? > > — > > > In addition to the other suggestions about using a MSVC command prompt (which > work just fine for manual builds), Here’s what I’ve done when needing to > automate the build using powershell: > > > Invoke-BatchFile "${env:ProgramFiles(x86)}\\Microsoft Visual > Studio\\2017\\Community\\VC\\Auxiliary\\Build\\vcvarsall.bat" x86_amd64 > Get-ChildItem env:* | Sort-Object name > > > …which invokes the vcvarsall batch and imports all of the environment vars > that were set by that invocation. vcvarsall is provided exactly for the > purpose of setting your env for building and it supports a few different arch > arguments to select the right toolchain. > > HTH, > Mike > > -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake