I'm maintaining this GitHub repo - a simple C project with CMake for build configuration. It builds on Linux and MacOS fine.
Now I want to start having build tests on Windows using AppVeyor for one of my branches (and on Linux using Travis, but that just works so no questions about it). I've set up an appveyor account, edited settings and created an appveyor.yml
file on the branch I want to test (drop_platform_spec
), based on a similar file I saw on another project.
I don't have a Windows machine where I can test the build myself, making things more difficult (and perhaps foolhardy I guess) to get right.
Anyway, the build does happen, but fails for two reasons:
sh.exe
is in the build path- CMake can't determine which C compiler to use
The build console output is attached below.
My questions: How do I fix this? Particularly, should I manually set the C compiler to some path, and if so, which path?
build console output:
git clone -q --depth=1 --branch=drop_platform_spec https://github.com/eyalroz/tpch-dbgen.git C:\projects\tpch-dbgen
git checkout -qf 4607da63ecaead909c4ba380c5097495655c592e
Running Install scripts
set "PATH=%mingw_bin%;%PATH%"
cmake -G "MinGW Makefiles" . && mingw32-make
CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.10/Modules/CMakeMinGWFindMake.cmake:12 (message):
sh.exe was found in your PATH, here:
C:/Program Files/Git/usr/bin/sh.exe
For MinGW make to work correctly sh.exe must NOT be in your path.
Run cmake from a shell that does not have sh.exe in your PATH.
If you want to use a UNIX shell, then use MSYS Makefiles.
Call Stack (most recent call first):
CMakeLists.txt:7 (project)
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
Command exited with code 1
Note: This question describes an incompatible sh and make situation. I don't think that's what I have, so it's not a dupe but if you think that's relevant to my situation, please explain in an answer here rather than marking a dupe.