[CMake] Problems with CMake on 64-bit Vista

Tanguy Krotoff tkrotoff at gmail.com
Mon Sep 14 06:50:38 EDT 2009


Hi all

I have the exact same problem: a message complaining about a bad
side-by-side configuration.
I have this on a fresh VM with XP 64bits and Visual Studio 2008 SP1.

I do have the 32bits debug version of msvcr90d.dll and friends inside
C:\WINDOWS\WinSxS\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_597c3456

I don't have any 64bits debug version of msvcr90d.dll and friends
inside C:\WINDOWS\WinSxS
I don't have a directory called something like
C:\WINDOWS\WinSxS\amd64_Microsoft.VC90.DebugCRT

So I've added C:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\redist\Debug_NonRedist\amd64\Microsoft.VC90.DebugCRT
to my PATH.
Using cmake --debug-trycompile, running cmTryCompileExec.exe gives me
side-by-side error.
If I copy-paste msvcr90d.dll and friends inside the directory where
cmTryCompileExec.exe is then it works.

What I don't understand is why try_run() compiles in debug mode.
And I can't manage to make try_run() compile in release mode (that
will solve all my problems), I don't know how to overwrite the flags
specified in the file
CMakeFiles\CMakeTmp\CMakeFiles\cmTryCompileExec.dir\flags.make


So the simple question is: how to make try_run() compile in release
mode instead of debug mode?


Thanks in advance


On Fri, Jul 24, 2009 at 4:59 PM, Barry Hathaway <bhathaw1 at nycap.rr.com> wrote:
> I'm having a couple of problems using CMake on a 64-bit Vista system.
> The first is using the 32-bit binary download of CMake to build vxl.
> The vxl build tries a number of times to use TRY_RUN. The try (compile)
> part works, but the run part always fails with message complaining about a
> bad side-by-side configuration:
>
> Run Build Command:C:\PROGRA~2\MICROS~1.0\Common7\IDE\devenv.com
> CMAKE_TRY_COMPILE.sln /build Debug /project cmTryCompileExec
> Microsoft (R) Visual Studio Version 9.0.21022.8. Copyright (C) Microsoft
> Corp. All rights reserved.
> 1>------ Build started: Project: cmTryCompileExec, Configuration: Debug x64
> ------
> 1>Compiling...
> 1>Microsoft (R) C/C++ Optimizing Compiler Version 15.00.21022.08 for x64
> 1>Copyright (C) Microsoft Corporation.  All rights reserved.
> 1>cl /Od /D "WIN32" /D "_WINDOWS" /D "VXL_HAS_TYPE_OF_SIZE" /D "_DEBUG" /D
> "CMAKE_INTDIR=\"Debug\"" /D "_MBCS" /FD /EHsc /RTC1 /MDd
> /Fo"cmTryCompileExec.dir\Debug\\"
> /Fd"C:/projects/reface/vxlbin-x64/CMakeFiles/CMakeTmp/Debug/cmTryCompileExec.pdb"
> /W3 /c /Zi /TP   /Zm1000 -IC:/projects/reface/vxlbin-x64/CMakeTmp 1>
> "..\..\..\fbi\Code\vxl\config\cmake\config\vxl_platform_tests.cxx"
> 1>vxl_platform_tests.cxx
> 1>Compiling manifest to resources...
> 1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0 1>Copyright
> (C) Microsoft Corporation.  All rights reserved.
> 1>Linking...
> 1>Embedding manifest...
> 1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0 1>Copyright
> (C) Microsoft Corporation.  All rights reserved.
> 1>Build log was saved at
> "file://c:\projects\reface\vxlbin-x64\CMakeFiles\CMakeTmp\cmTryCompileExec.dir\Debug\BuildLog.htm"
> 1>cmTryCompileExec - 0 error(s), 0 warning(s) ========== Build: 1 succeeded,
> 0 failed, 0 up-to-date, 0 skipped ========== The application has failed to
> start because its side-by-side configuration is incorrect. Please see the
> application event log for more detail
>
> Anyway, I figured it was an issue with a 32-bit CMake trying to run a 64-bit
> program (why it want to
> compile it with a DEBUG flag is another issue). So I tried to build a 64-bit
> version of CMake with
> Visual Studio 2008.  I was able to run CMake on CMake without any problems;
> however, the compile
> failed with many errors in the header files.  This occurred whether or not I
> checked the build testing option.
>
> Any ideas to either one of these problems.  Thanks.
>
> Barry Hathaway

-- 
Tanguy Krotoff <tkrotoff at gmail.com>
+33 6 68 42 70 24


More information about the CMake mailing list