[CMake] cmake build using msvc2005

Olaf ope-devel at gmx.de
Fri Jul 13 06:56:29 EDT 2007


Hi,

once more I tried to compile cmake using VS Express (the environment is
working, did compile Xerces etc.). To compile cmake I use the
precompiled version from webpage:

c:\cpp\bin\cmake -G "Visual Studio 8 2005"
-- Check for working C compiler: cl
CMake Error: Generator: execution of make failed. Make command was:
C:\PROGRA~1\MICROS~1\Common7\IDE\VCEXPR~1.EXE\VCExpress.exe
CMAKE_TRY_COMPILE.sln /build Debug /project cmTryCompileExec
-- Check for working C compiler: cl -- broken
CMake Error: The C compiler "cl" is not able to compile a simple test
program.
It fails with the following output:
 Das System kann den angegebenen Pfad nicht finden
Generator: execution of make failed. Make command was:
C:\PROGRA~1\MICROS~1\Common7\IDE\VCEXPR~1.EXE\VCExpress.exe
CMAKE_TRY_COMPILE.sln /build Debug /project cmTryCompileExec
CMake will not be able to correctly generate this project.
-- Configuring done

The win Gui cmakesetup shows an error that CMAKE_MAKE_PROGRAM isn't found.

Well, after some hours I know more ;-)

The way to find the VCExpress Exe in CMakeVC8FindMake won't work. I
renamed VCEpress.exe to devenv.{exe|manifest} and changed the search order:

FIND_PROGRAM(CMAKE_MAKE_PROGRAM
  NAMES devenv VCExpress
  PATHS

[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup\\VS;EnvironmentDirectory]
 [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\8.0\\Setup;Dbghelp_path]
  "$ENV{ProgramFiles}/Microsoft Visual Studio .NET/Common7/IDE"
  "$ENV{ProgramFiles}/Microsoft Visual Studio 8/Common7/IDE"
  "$ENV{ProgramFiles}/Microsoft Visual Studio8/Common7/IDE"
  "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio .NET/Common7/IDE"
  "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio 8/Common7/IDE"
  "$ENV{ProgramFiles} (x86)/Microsoft Visual Studio8/Common7/IDE"
  "/Program Files/Microsoft Visual Studio 8/Common7/IDE/"
  )
MARK_AS_ADVANCED(CMAKE_MAKE_PROGRAM)
SET(MSVC80 1)

Now it's working!:

D:\Temp\build\CMake-cvs-head>c:\cpp\bin\cmake -G "Visual Studio 8 2005"
-- Check for working C compiler: cl
-- Check for working C compiler: cl -- works
-- Check size of void*
-- Check size of void* - done
-- Check for working CXX compiler: cl
-- Check for working CXX compiler: cl -- works
-- Looking for C++ include iostream
-- Looking for C++ include iostream - found
-- Check for STD namespace
....

No idea if that matters:
dir "c:\Programme\Microsoft Visual Studio 8\Common7\IDE"\VC*
 Volume in Laufwerk C: hat keine Bezeichnung.
 Volumeseriennummer: D413-2D93
 Verzeichnis von c:\Programme\Microsoft Visual Studio 8\Common7\IDE
02.12.2006  06:28           208.656 VCExpress.exe
09.12.2005  10:38             1.034 VCExpress.exe.manifest
09.07.2007  10:30    <DIR>          VCExpress
09.12.2005  10:38               807 VCExpress.exe.config
09.12.2005  10:38            33.680 VCExpress.prf
09.12.2005  10:45            33.280 VCExpressmnu.dll
               5 Datei(en)        277.457 Bytes
               1 Verzeichnis(se), 70.653.915.136 Bytes frei

There is a directory called VCExpress too! Hopefully you can fix it in
the cvs/release.

Regards,
Olaf


More information about the CMake mailing list