On Sunday 13 September 2009, Casey Jones wrote: > Hello, I'm trying to link a Qt4 library into my program as an optional > dependency. I can get it to find and link the library with a > FindFoo.cmake. But when I use check_include_files( foo.h HAVE_FOO_H ) it > says it can't find the header. So looking in CMakeError.log it says it > found foo.h but since it includes Qt headers like: > #include <QString> > instead of > #include <qt4/QtCore/QString> > it can't compile the test program. > > Is there a way to have check_include_files() not compile the test program > and just make sure the header exists?
You could just use find_path(FOO_INCLUDE_DIR foo.h ...), usually this is good. enough. Or you can set the cmake variable CMAKE_REQUIRED_INCLUDES before calling the check_include_files() macro so that it lists all necessary include dirs (should be ${QT_QTCORE_INCLUDE_DIR} or something like this) > Or is there some other way to create the config.h.in and config.h? You don't *have* to compile anything in order to create a config.h from a config.h.in. configure_file() reads the config.h.in and replaces all cmake variables with their values in that file and writes the output file. It doesn't matter where these values come from, whether a check_include_files() or if you just set them. Alex _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake