CMake problem with intel parallel studio 2017

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

CMake problem with intel parallel studio 2017

CMake mailing list

Hi,

 

I try to create Visual Studio 2015 (VS2015) solutions with the intel c++ compiler from Intel Parallel Studio XE (iPSXE) 2017.

(win7 64bit ).

Apparently, the toolset is identified correctly but the compiler is not, due to some tests that do not manage to link.

I have 2 questions:

a)      How does the identification of the toolset proceed? (I used the –T command line option)

b)      Apparently the linker fails to find some (math) libraries located in the installation directory of the toolchain. There is some chance that intel’s installation is problematic but accepting this to be the state of things, what can be done?

1)      How are these tests really run?

2)      How is the toolset endowed with the necessary include and link/lib directories (within CMake).

3)      How can I append more of these directories to “help” the compiler identification and/or attributes discovery?

TIA,

(I will greatly appreciate any relevant info)

Petros

 

PS: I show here the first part of the error log, for concreteness:

 

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.

Compiler: 

Build flags:

Id flags: 

 

The output was:

1

Microsoft (R) Build Engine version 14.0.25420.1

Copyright (C) Microsoft Corporation. All rights reserved.

 

Build started 6/8/2017 12:09:12 PM.

Project "C:\_petros\_dev\math_dev\_build_trees\x64\vc14-intel-17_0_0\CMakeFiles\3.9.0-rc2\CompilerIdCXX\CompilerIdCXX.vcxproj" on node 1 (default targets).

PrepareForBuild:

  Creating directory "Debug\".

  Creating directory "Debug\CompilerIdCXX.tlog\".

InitializeBuildStatus:

  Creating "Debug\CompilerIdCXX.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.

MessageBuildingWithCompiler:

  Building with Intel(R) C++ Compiler 17.0

ClCompile:

  ***** ClCompile (x64 - Intel C++)

  C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.0.109\windows\bin\intel64\icl.exe /c /Qm64 /nologo /W0 /Od /D __INTEL_COMPILER=1700 /D _MBCS /EHsc /RTC1 /MDd /GS /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc140.pdb" /TP CMakeCXXCompilerId.cpp

  CMakeCXXCompilerId.cpp

Link:

  C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.0.109\windows\bin\intel64\xilink.exe -qm64 /OUT:".\CompilerIdCXX.exe" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /manifest:embed /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /PDB:".\CompilerIdCXX.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\CompilerIdCXX.lib" /MACHINE:X64 Debug\CMakeCXXCompilerId.obj

LINK : : error LNK1104: cannot open file 'libmmdd.lib' [C:\_petros\_dev\math_dev\_build_trees\x64\vc14-intel-17_0_0\CMakeFiles\3.9.0-rc2\CompilerIdCXX\CompilerIdCXX.vcxproj]

Done Building Project "C:\_petros\_dev\math_dev\_build_trees\x64\vc14-intel-17_0_0\CMakeFiles\3.9.0-rc2\CompilerIdCXX\CompilerIdCXX.vcxproj" (default targets) -- FAILED.

 

Build FAILED.

 


--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: CMake problem with intel parallel studio 2017

Brad King
On 06/08/2017 03:02 PM, Mamales, Petros  via CMake wrote:
> I try to create Visual Studio 2015 (VS2015) solutions with the
> intel c++ compiler from Intel Parallel Studio XE (iPSXE) 2017.
> a)      How does the identification of the toolset proceed? (I used the –T command line option)

It works for me like this:

    >cmake --version
    cmake version 3.9.0-rc2

    >cmake ..\src -G "Visual Studio 14 2015" -A x64 -T "Intel C++ Compiler 17.0"
    -- The C compiler identification is Intel 17.0.0.20160721
    -- Check for working C compiler: C:/Program Files (x86)/Intel/SWTools/compilers_and_libraries_2017/windows/bin/intel64/icl.exe
    -- Check for working C compiler: C:/Program Files (x86)/Intel/SWTools/compilers_and_libraries_2017/windows/bin/intel64/icl.exe -- works

This does *not* need to be run at a command prompt with any special environment
for the compiler.

> 1)      How are these tests really run?

It generates a .vcxproj file with the PlatformToolset field set and then
runs MSBuild.

> 2)      How is the toolset endowed with the necessary include and link/lib directories (within CMake).

MSBuild takes care of this when running the compiler inside its environment.

> 3)      How can I append more of these directories to “help” the compiler identification and/or attributes discovery?

You shouldn't need to do this, and there isn't really a way to do it.

-Brad

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: CMake problem with intel parallel studio 2017

CMake mailing list
Hi Brad,
Thank you for the one-to-one answers! Much appreciated!
I was afraid of 3) as a reasonable answer. Unfortunately intel PSXE installation process has some desirables as a process, and
things do not always work as intended, hence I was hoping for a workaround.
In case  you would like to oblige even more: how is the specification of the toolset (from command line) translates to the modules folder in CMake?
(only if it is not too much to ask).
At any rate, thank you very much again and have a very nice weekend!
Petros

-----Original Message-----
From: Brad King [mailto:[hidden email]]
Sent: Friday, June 09, 2017 11:01 AM
To: Mamales, Petros [CCC-OT NE]
Cc: CMake
Subject: Re: [CMake] CMake problem with intel parallel studio 2017

On 06/08/2017 03:02 PM, Mamales, Petros  via CMake wrote:
> I try to create Visual Studio 2015 (VS2015) solutions with the intel
> c++ compiler from Intel Parallel Studio XE (iPSXE) 2017.
> a)      How does the identification of the toolset proceed? (I used the -T command line option)

It works for me like this:

    >cmake --version
    cmake version 3.9.0-rc2

    >cmake ..\src -G "Visual Studio 14 2015" -A x64 -T "Intel C++ Compiler 17.0"
    -- The C compiler identification is Intel 17.0.0.20160721
    -- Check for working C compiler: C:/Program Files (x86)/Intel/SWTools/compilers_and_libraries_2017/windows/bin/intel64/icl.exe
    -- Check for working C compiler: C:/Program Files (x86)/Intel/SWTools/compilers_and_libraries_2017/windows/bin/intel64/icl.exe -- works

This does *not* need to be run at a command prompt with any special environment for the compiler.

> 1)      How are these tests really run?

It generates a .vcxproj file with the PlatformToolset field set and then runs MSBuild.

> 2)      How is the toolset endowed with the necessary include and link/lib directories (within CMake).

MSBuild takes care of this when running the compiler inside its environment.

> 3)      How can I append more of these directories to "help" the compiler identification and/or attributes discovery?

You shouldn't need to do this, and there isn't really a way to do it.

-Brad

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: CMake problem with intel parallel studio 2017

Brad King
On 06/09/2017 11:51 AM, Mamales, Petros  wrote:
> how is the specification of the toolset (from command line) translates
> to the modules folder in CMake?

The -T option specifies the CMAKE_GENERATOR_TOOLSET:

  https://cmake.org/cmake/help/v3.9/variable/CMAKE_GENERATOR_TOOLSET.html

That value tells the VS generator what to put in the PlatformToolset
field of .vcxproj files.  This influences how the compiler identification
source is compiled, and that uses preprocessor logic to detect the compiler
id and version based on predefined macros.  The resulting compiler id is
used to decide which compiler/platform information modules to load.

-Brad

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: CMake problem with intel parallel studio 2017

CMake mailing list
Thank you very much!
I saw it to be along these lines, by doing (quite) a few "greps" and reading the documentation. The last step is the one I was trying to pin down -;)
All the best,
Petros

-----Original Message-----
From: Brad King [mailto:[hidden email]]
Sent: Friday, June 09, 2017 12:45 PM
To: Mamales, Petros [CCC-OT NE]
Cc: CMake
Subject: Re: [CMake] CMake problem with intel parallel studio 2017

On 06/09/2017 11:51 AM, Mamales, Petros  wrote:
> how is the specification of the toolset (from command line) translates
> to the modules folder in CMake?

The -T option specifies the CMAKE_GENERATOR_TOOLSET:

  https://urldefense.proofpoint.com/v2/url?u=https-3A__cmake.org_cmake_help_v3.9_variable_CMAKE-5FGENERATOR-5FTOOLSET.html&d=DwIC-g&c=j-EkbjBYwkAB4f8ZbVn1Fw&r=6_wuzZXSt4ORpgK3tgk-CcUFf9XSS7xAF6v69MPzaXs&m=ndEV5F8r4x5YENtVn3zcQE4_UrdFQ64ciZs23R-67tc&s=kHqrsGxWzTErzhOGTW390ytAG-PjpuE7WW1uxM7hEoM&e= 

That value tells the VS generator what to put in the PlatformToolset field of .vcxproj files.  This influences how the compiler identification source is compiled, and that uses preprocessor logic to detect the compiler id and version based on predefined macros.  The resulting compiler id is used to decide which compiler/platform information modules to load.

-Brad

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
Loading...