[CMake] CMake Digest, Vol 100, Issue 38

Bill Hoffman bill.hoffman at kitware.com
Thu Aug 16 12:04:27 EDT 2012


On 8/16/2012 10:58 AM, LM wrote:

> I added . to the path per another suggestions, but had previously
> tried without it.
>
> I tried running bootstrap again after I exported MAKE.  Previous runs
> were without any environment variable settings for MAKE.  I get the
> same issues when I try to run.  I also tried exporting
> MAKE=/mingw/msys/bin/make and /c/mingw/msys/bin/make.  No difference.
> It appears to be failing in CMakeTestCCompiler.cmake.  I tried
> creating a similar test program to the one in the file and compiled
> and built it manually.  The program itself appears to run
> successfully.  Not sure why it's failing when cmake attempts to build
> it.
>
> It appears to be ignoring the MAKE environment variable setting at the
> point where I'm hitting the error.  At the beginning of ./bootstrap it
> does use it and says "Makefile processor on this system is: " giving
> the name and location from MAKE or the one found first in my path if
> MAKE is not set.  However, even if I copy make.exe locally and set
> MAKE=make, it finds the local one at the beginning, but it still says:
> Run Build Command:C:/MinGW/msys/bin/make.exe

What generator is cmake picking in bootstrap?

# Choose the generator to use for bootstrapping.
if ${cmake_system_mingw}; then
   # Bootstrapping from an MSYS prompt.
   cmake_bootstrap_generator="MSYS Makefiles"
else
   # Bootstrapping from a standard UNIX prompt.
   cmake_bootstrap_generator="Unix Makefiles"
fi

These are actually the same
C:/MinGW/msys/bin/make.exe
\mingw\msys\bin\make.exe

So, that is correct.


You could try running the cmake bootstrap command yourself from the 
bootstrap script.

"${cmake_bootstrap_dir}/cmake" "${cmake_source_dir}" 
"-C${cmake_bootstrap_dir}/InitialCacheFlags.cmake" 
"-G${cmake_bootstrap_generator}" ${cmake_options} 
${cmake_bootstrap_system_libs} "$@"
RES=$?


Then add --debug-trycompile to the line and experiment with running 
various versions of make on that file.  Sounds like it might be finding 
the wrong sh or something.  You should not have to set MAKE, make does 
that.

What shell are you running bootstrap from?


>
> Just to clarify, I'm using the make.exe (built with msys libraries) in
> \mingw\msys\bin inside the msys shell.  I am not using
> \mingw\bin\mingw32-make.exe which was built to work outside of the
> msys shell (and without forked Cygwin emulation aka msys dlls).  Am
> trying to get this to build within msys because I want to write the
> steps to automate the entire build process in a bash script (if I can
> get it working).  Thanks.
>
So, you could just download a pre-built cmake.  That should work for 
you.  You are downloading a pre-built msys.  That said this should work...


-Bill



More information about the CMake mailing list