[CMake] NMake Generation Error: machine type 'X86' conflicts with target machine type 'x64'

Richard Wackerbarth rkw at dataplex.net
Fri Nov 13 11:46:22 EST 2009


Aaron,

Perhaps I have it wrong, but I think that the problem is that you are using CMakeCache.txt that was created on a different machine.

CMakeCache.txt acts as a "configuration file" that overrides the registry, environmental variables, and everything else that has a default value.
This allows the user to define the values that he wishes to have used.

As for automated nightly builds, the standard technique is to use "ctest -S" to set up and run the dashboard. In that case, you usually have it delete the previous build directory and you populate the initial cache with only those values that you wish to "force" (for example, you might select a particular compiler for one run and another for a different run). Variables that you want to have their default value are simply omitted from the initial cache.  See the notes files on almost any of the nightly submissions to the CMake dashboard for examples.

Richard

On Nov 13, 2009, at 10:25 AM, Bill Hoffman wrote:

> Aaron_Wright at selinc.com wrote:
>> I've tried this on several machines and CMake always seems to think the box is x64 even though it clearly says it's x86. I can fix the problem by deleting CMakeCache.txt and running CMake again, which is weird. I'm trying to automate the whole thing in a night build script so this behavior is not helpful. Ideas?
>> ---------------------------------------------------------
>> Aaron Wright
> 
> You need to install the windows SDK for CMake to work.
> 
> -Bill



More information about the CMake mailing list