View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0015889CMakeCMakepublic2015-12-19 16:002016-06-10 14:21
ReporterVivien Millet 
Assigned ToBrad King 
PriorityhighSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformWin64OSWindows 7OS Version
Product VersionCMake 3.4.1 
Target VersionCMake 3.4.2Fixed in VersionCMake 3.4.2 
Summary0015889: IA64 compilers not found in Visual Studio 2010 (and probably others)
DescriptionIn the CMakeDetermineCompilerId at line 186 there is :

set(id_platform ia64)

this leads to generate a bad CompilerIdC(XX).vcxproj with Debug|ia64 and Release|ia64 configurations, not recognized by devenv.exe.
Indeed devenv.exe onyl recognize "Itanium".
The question is why changing "Itanium" to "ia64" in the .cmake because without this line everything goes well and the IA compilers are found
Steps To ReproduceTry to configure any CMake project with Visual Studio 2010 IA64, and compilers won't be found.
TagsNo tags attached.
Attached Files

 Relationships

  Notes
(0040008)
Brad King (manager)
2015-12-21 08:47

Support for Itanium is not well-tested or widely used so this is not surprising. Are you saying that

-set(id_platform ia64)
+set(id_platform Itanium)

is the only change needed to fix the problem?
(0040009)
Vivien Millet (reporter)
2015-12-21 08:55

I understand that it's not surprising indeed.

-set(id_platform ia64)

should be enough because the id_platform already has the "Itanium" value by default when platform Itanium is chosen (logical).
I only tested that on visual studio 2010 though. It may be necessary to check if Visual Studio has not changed its platform ID/names since (2012/2013/2015) on MSDN.
And maybe ask directly the one that added this line to know the reason.
(0040011)
Brad King (manager)
2015-12-21 09:29

Thanks. It looks like the current code evolved with this wrong since it was first added here:

 VS: Detect the compiler id and tool location
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=66cb3356 [^]

As of that version the VS 9 generator had the correct value:

 https://cmake.org/gitweb?p=cmake.git;a=blob;f=Source/cmGlobalVisualStudio9IA64Generator.cxx;hb=66cb3356#l19 [^]

but the VS 10 generator did not:

 https://cmake.org/gitweb?p=cmake.git;a=blob;f=Source/cmGlobalVisualStudio10IA64Generator.cxx;hb=66cb3356#l19 [^]

The latter was corrected by

 VS: Fix ArchitectureId of Visual Studio 10 IA64 generator
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8d42ab42 [^]

but the CMakeDetermineCompilerId bug remains. I guess no one has been using this for a long time.
(0040012)
Brad King (manager)
2015-12-21 09:35

This should fix it:

 CMakeDetermineCompilerId: Fix VS Itanium platform name
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d9bf5206 [^]
(0040013)
Vivien Millet (reporter)
2015-12-21 09:39

It's what i've done on my side to fix the issue ! Great !
(0041282)
Kitware Robot (administrator)
2016-06-10 14:21

This issue tracker is no longer used. Further discussion of this issue may take place in the current CMake Issues page linked in the banner at the top of this page.

 Issue History
Date Modified Username Field Change
2015-12-19 16:00 Vivien Millet New Issue
2015-12-21 08:47 Brad King Note Added: 0040008
2015-12-21 08:55 Vivien Millet Note Added: 0040009
2015-12-21 09:29 Brad King Note Added: 0040011
2015-12-21 09:35 Brad King Note Added: 0040012
2015-12-21 09:35 Brad King Assigned To => Brad King
2015-12-21 09:35 Brad King Status new => resolved
2015-12-21 09:35 Brad King Resolution open => fixed
2015-12-21 09:35 Brad King Fixed in Version => CMake 3.5
2015-12-21 09:35 Brad King Target Version => CMake 3.5
2015-12-21 09:39 Vivien Millet Note Added: 0040013
2016-01-20 10:23 Brad King Fixed in Version CMake 3.5 => CMake 3.4.2
2016-01-20 10:23 Brad King Target Version CMake 3.5 => CMake 3.4.2
2016-06-10 14:21 Kitware Robot Note Added: 0041282
2016-06-10 14:21 Kitware Robot Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team