Azure DevOps Pipeline CMake с MSVC и NMake - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь настроить конвейер 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'
...