[CMake] Cray wrappers and Intel compilers

Tim Gallagher tim.gallagher at gatech.edu
Tue May 5 13:43:04 EDT 2015


We use a toolchain file to do the same thing: 

# the name of the target operating system 
SET(CMAKE_SYSTEM_NAME Catamount) 

# set the compiler 
set(CMAKE_C_COMPILER cc) 
set(CMAKE_CXX_COMPILER CC) 
set(CMAKE_Fortran_COMPILER ftn) 

There is more info on it if you search around: 

http://www.cmake.org/cmake/help/v3.0/manual/cmake-toolchains.7.html 
http://www.vtk.org/Wiki/CMake_Cross_Compiling 

Tim 

----- Original Message -----

From: "KT Thompson" <kgt at lanl.gov> 
To: "Lucas Pettey" <Lucas.Pettey at engilitycorp.com>, "cmake ‎[cmake at cmake.org]‎" <cmake at cmake.org> 
Sent: Tuesday, May 5, 2015 12:42:30 PM 
Subject: Re: [CMake] Cray wrappers and Intel compilers 



Lucas, 

When using CMake on our Cray environments (XE6, Intel compilers under the Cray wrappers), I do the following: 

1. Create CMakeCache.txt in the build directory with these contents: 

CMAKE_SYSTEM_NAME:STRING=Catamount 
CMAKE_C_COMPILER:FILEPATH=cc 
CMAKE_CXX_COMPILER:FILEPATH=CC 
CMAKE_Fortran_COMPILER:FILEPATH=ftn 


2. cmake /path/to/source 

Maybe the CMake experts on the list can tell us a better way. 

-kt 



From: CMake [mailto:cmake-bounces at cmake.org] On Behalf Of Lucas.Pettey at engilitycorp.com 
Sent: Tuesday, May 05, 2015 10:14 AM 
To: cmake ‎[cmake at cmake.org]‎ 
Subject: [CMake] Cray wrappers and Intel compilers 


Hello, 

I have been trying to use Cmake 3.2.2 on a Cray XC30 with the Intel compilers loaded. I encounter the following error: 


/opt/cray/craype/2.2.0/bin/cc -o 
CMakeFiles/cmTryCompileExec2303156381.dir/testCCompiler.c.o -c 
/p/home/lpettey/adh/parmetis-4.0.3/build/Linux-x86_64/CMakeFiles/CMakeTmp/testCCompiler.c 


Linking C executable cmTryCompileExec2303156381 

/p/home/lpettey/cmake-3.2.2/install/bin/cmake -E cmake_link_script 
CMakeFiles/cmTryCompileExec2303156381.dir/link.txt --verbose=1 

/opt/cray/craype/2.2.0/bin/cc 
CMakeFiles/cmTryCompileExec2303156381.dir/testCCompiler.c.o -o 
cmTryCompileExec2303156381 -rdynamic 

ld: dynamic STT_GNU_IFUNC symbol `strcmp' with pointer equality in 
`/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib64/libc.a(strcmp.o)' 
can not be used when making an executable; recompile with -fPIE and relink 
with -pie 

Is there any way to ask Cmake not to add the -rdynamic to the link line? I believe this is what is causing the error. 

Thanks, 

Lucas Pettey, PhD 

HPCMP PETTT EQM CTA Lead 

ERDC-DSRC OnSite 

Vicksburg, MS 

512-297-9833 Mobile (preferred) 

601-634-2980 Office 

lucas.pettey at engilitycorp.com 
-- 

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 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20150505/162c25d9/attachment-0001.html>


More information about the CMake mailing list