[CMake] CMAKE_SIZEOF_VOID_P is unset when building libgit2 on Windows

Brad King brad.king at kitware.com
Mon Mar 28 10:09:36 EDT 2016


On 03/25/2016 05:08 PM, Sebastian Schuberth wrote:
> Looking at CMakeError.log was a good hint. I found:
> 
> C:/Ruby-DevKit/mingw/bin/gcc.exe    -fPIC    -o
> CMakeFiles/cmTC_c0166.dir/CMakeCCompilerABI.c.obj   -c "C:/Program
> Files (x86)/CMake/share/cmake-3.5/Modules/CMakeCCompilerABI.c"
> 
> /usr/bin/sh: -c: line 0: syntax error near unexpected token `('
> /usr/bin/sh: -c: line 0: `C:/Ruby-DevKit/mingw/bin/gcc.exe    -fPIC
> -o CMakeFiles/cmTC_c0166.dir/CMakeCCompilerABI.c.obj   -c \C:/Program
> Files (x86)/CMake/share/cmake-3.5/Modules/CMakeCCompilerABI.c\'
> CMakeFiles/cmTC_c0166.dir/build.make:65: recipe for target
> 'CMakeFiles/cmTC_c0166.dir/CMakeCCompilerABI.c.obj' failed
> ---8<---
> 
> There seems to be some problem in escaping the non-alphanumeric chars
> in the path to "CMakeCCompilerABI.c".

Strange.  CMake is regularly used from "C:/Program Files (x86)/CMake".

> Any hint how to debug this further?

Try running the logged compiler command line by hand:

  C:/Ruby-DevKit/mingw/bin/gcc.exe -c "C:/Program Files (x86)/CMake/share/cmake-3.5/Modules/CMakeCCompilerABI.c"

Also try configuring a small test project in a fresh build tree:

 $ cat CMakeLists.txt
 cmake_minimum_required(VERSION 3.5)
 project(test C)
 message("${CMAKE_SIZEOF_VOID_P}")

If that reproduces the problem, try configuring with --debug-trycompile
so that the CMakeFiles/CmakeTmp/CMakeFiles/cmTC_*.dir/build.make files
will be left behind for inspection.

-Brad


More information about the CMake mailing list