После генерации файлов, необходимых для сборки приложения, на основе сценария CMake, CMake должен определить несколько битов информации о запрошенном генераторе (который предоставляется явно -G
или каким-либо другим по умолчанию).Чтобы собрать эту информацию, CMake компилирует некоторый код C и C ++ (вы можете посмотреть на вывод CMake, где он выводит некоторую информацию о проверке компилятора C, а затем компилятора C ++) с помощью компилятора, связанного с данным генератором.Поэтому, учитывая, что мы хотим генерировать файлы проекта MSVS, нам нужно иметь работающий компилятор MSVC, установленный в нашей системе, и этот компилятор должен иметь возможность создавать код, который хочет построить CMake.
Именно поэтому CMake не можетобеспечить генератор MSVS на pure Linux.Поэтому, чтобы заставить CMake делать это в Linux, вы должны запустить CMake.exe
в Linux с установленным MSVC, что, насколько я знаю, возможно с помощью Wine.