[CMake] try_compile question
Mark Moll
mmoll at cs.rice.edu
Mon Jun 7 12:57:56 EDT 2010
I must be missing something obvious, but I can’t get try_compile to work. I have the following file, CheckSZencoder.cpp:
#include <stdlib.h>
#include <szlib.h>
int main(void)
{
if(SZ_encoder_enabled() == 1)
exit(0);
else
exit(1);
}
I have these cmake commands:
find_library(SZ_LIBRARY sz DOC "Szip library")
find_path(SZ_INCLUDE szlib.h DOC "Szip include directory")
message("${SZ_INCLUDE}\n${SZ_LIBRARY}")
try_compile(SZ_ENCODER "${PROJECT_BINARY_DIR}"
"${CMAKE_SOURCE_DIR}/CMakeModules/CheckSZencoder.cpp"
CMAKE_FLAGS
INCLUDE_DIRECTORIES ${SZ_INCLUDE}
LINK_LIBRARIES ${SZ_LIBRARY}
OUTPUT_VARIABLE szoutput)
message(${szoutput})
The output I get from cmake is:
/Users/mmoll/external/sandbox/include
/Users/mmoll/external/sandbox/lib/libsz.a
Change Dir: /Users/mmoll/build/Release/CMakeFiles/CMakeTmp
Run Build Command:/opt/local/bin/gmake "cmTryCompileExec/fast"
/opt/local/bin/gmake -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
gmake[1]: Entering directory `/Users/mmoll/build/Release/CMakeFiles/CMakeTmp'
/opt/local/bin/cmake -E cmake_progress_report /Users/mmoll/build/Release/CMakeFiles/CMakeTmp/CMakeFiles 1
Building CXX object CMakeFiles/cmTryCompileExec.dir/CheckSZencoder.cpp.o
/opt/local/bin/c++ -isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 -o CMakeFiles/cmTryCompileExec.dir/CheckSZencoder.cpp.o -c /Users/mmoll/CMakeModules/CheckSZencoder.cpp
/Users/mmoll/CMakeModules/CheckSZencoder.cpp:2:19: error: szlib.h: No such file or directory
/Users/mmoll/CMakeModules/CheckSZencoder.cpp: In function ‘int main()’:
/Users/mmoll/CMakeModules/CheckSZencoder.cpp:7: error: ‘SZ_encoder_enabled’ was not declared in this scope
gmake[1]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSZencoder.cpp.o] Error 1
gmake[1]: Leaving directory `/Users/mmoll/build/Release/CMakeFiles/CMakeTmp'
gmake: *** [cmTryCompileExec/fast] Error 2
FALSE
--
Mark
More information about the CMake
mailing list