У меня есть некоторые проблемы с получением проекта Cmake на контейнере Windows.
Вызов команды cmake (в частности: cmake -G CodeBlocks - MinGW Makefiles -DCMAKE_SH=CMAKE_SH-NOTFOUND -DCMAKE_BUILD_TYPE=Release ../
) на агенте сборки Hosted VS2017 происходит сбой из-за sh.exe, найденного в PATH:
CMake Error at C:/Program Files/CMake/share/cmake-3.12/Modules/CMakeMinGWFindMake.cmake:12 (message):
sh.exe was found in your PATH, here: C:/Program Files/Git/bin/sh.exe
разные Ответ переполнения стека заставил меня поверить, что предоставление аргумента -DCMAKE_SH=CMAKE_SH-NOTFOUND
будет подавлять это поведение, но мне не повезло.
Удаление вручную из PATH с помощью:
setx /M PATH "%PATH:C:/Program Files/Git/bin/sh.exe;=%"
Кажется, не имеет никакого эффекта (или, возможно, команды cmake build и cmd совместно используют один и тот же сеанс cmd, поэтому изменение PATH не распространяется).
Казалось бы из этот ответьте, что я могу сохранить изменение PATH, используя Write-Host "##vso[task.setvariable variable=PATH;]${env:PATH};$newPath";
, Прежде чем я совершу этот маршрут, я что-то упустил? Конечно, сборка CMake на агентах Windows VSTS не может быть неудачной для всех.
Задача ещё не решена.
Других решений пока нет …