Я пытаюсь настроить конвейер Azure DevOps в Windows, компилировать мой код с помощью cmake и генерировать файлы nmake, а затем вызывать nmake.Однако после настройки пути к cl.exe
через cmake он не сможет протестировать компиляторы при вызове nmake
.Я попытался добавить к пути в CMakeFiles.txt
, добавить командную строку перед CMake, которая добавляет nmake
к PATH
(который я проверил, существует и содержит nmake
), и, наконец, вызвать cmake
вта же командная строка, что и при добавлении к PATH
, за исключением того, что ни один из этих параметров не работал.Когда я добавляю к nmake
к PATH
ранее, используя отдельную командную строку, она таинственным образом исчезает при следующей инструкции.
Как мне настроить сборку для компиляции с cmake
, а затем nmake
?
edit: это мой текущий сгенерированный yaml, вызывающий все в одной командной строке.Кнопка «Просмотр YAML» на конвейере ничего не делает, так что это только для командного блока
steps:
- script: |
set PATH="%PATH%;C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\hostx86\x86\"
dir "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\hostx86\x86\"
echo %PATH%
"C:\Program Files\CMake\bin\cmake.exe" -G "NMake Makefiles" -DCMAKE_SH="CMAKE_SH-NOTFOUND" $(Build.Repository.LocalPath)
"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\hostx86\x86\nmake.exe" $(Build.Repository.LocalPath)\build
displayName: 'compile with cmake'