[CMake] Problem with get_filename_component() and CMAKE_CXX_COMPILER when finding Qt4
Petr Kmoch
petr.kmoch at gmail.com
Mon Apr 29 10:20:48 EDT 2013
Any idea on this? Or should I file a bug report?
On Mon, Apr 22, 2013 at 3:15 PM, Petr Kmoch <petr.kmoch at gmail.com> wrote:
> If you look at the trace, you'll see the following few lines before the
> error:
>
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/FindQt4.cmake(738):
> set(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES} )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/FindQt4.cmake(739):
> set(CMAKE_REQUIRED_FLAGS_SAVE ${CMAKE_REQUIRED_FLAGS} )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/FindQt4.cmake(741):
> set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR} )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/FindQt4.cmake(743):
> CHECK_CXX_SYMBOL_EXISTS(Q_WS_X11 QtCore/qglobal.h Q_WS_X11 )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckCXXSymbolExists.cmake(41):
> _CHECK_SYMBOL_EXISTS(${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckSymbolExists.cxx
> Q_WS_X11 QtCore/qglobal.h Q_WS_X11 )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(46): if(Q_WS_X11
> MATCHES ^Q_WS_X11$ )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(47):
> set(CMAKE_CONFIGURABLE_FILE_CONTENT /* */\n )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(48):
> set(MACRO_CHECK_SYMBOL_EXISTS_FLAGS ${CMAKE_REQUIRED_FLAGS} )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(49):
> if(CMAKE_REQUIRED_LIBRARIES )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(54): else()
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(55):
> set(CHECK_SYMBOL_EXISTS_LIBS )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(57):
> if(CMAKE_REQUIRED_INCLUDES )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(58):
> set(CMAKE_SYMBOL_EXISTS_INCLUDES
> -DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES} )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(63): foreach(FILE
> QtCore/qglobal.h )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(64):
> set(CMAKE_CONFIGURABLE_FILE_CONTENT
> ${CMAKE_CONFIGURABLE_FILE_CONTENT}#include <${FILE}>\n )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(67):
> set(CMAKE_CONFIGURABLE_FILE_CONTENT ${CMAKE_CONFIGURABLE_FILE_CONTENT}\nint
> main(int argc, char** argv)\n{\n (void)argv;\n#ifndef Q_WS_X11\n return
> ((int*)(&Q_WS_X11))[argc];\n#else\n (void)argc;\n return 0;\n#endif\n}\n )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(70):
> configure_file(${CMAKE_ROOT}/Modules/CMakeConfigurableFile.in
> D:/Tmp/cmake/bld/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx @ONLY IMMEDIATE )
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(73): message(STATUS
> Looking for Q_WS_X11 )
> -- Looking for Q_WS_X11
> C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CheckSymbolExists.cmake(74):
> try_compile(Q_WS_X11 ${CMAKE_BINARY_DIR}
> D:/Tmp/cmake/bld/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx
> COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} CMAKE_FLAGS
> -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_SYMBOL_EXISTS_FLAGS}
> ${CHECK_SYMBOL_EXISTS_LIBS} ${CMAKE_SYMBOL_EXISTS_INCLUDES} OUTPUT_VARIABLE
> OUTPUT )
>
> CMake Error at C:/Program Files (x86)/CMake
> 2.8/share/cmake-2.8/Modules/CMakeCXXInformation.cmake:37
> (get_filename_component):
> get_filename_component called with incorrect number of arguments
> Call Stack (most recent call first):
> CMakeLists.txt:2 (PROJECT)
>
>
>
>
> On Mon, Apr 22, 2013 at 3:05 PM, Rolf Eike Beer <eike at sf-mail.de> wrote:
>
>> Am 22.04.2013 14:26, schrieb Petr Kmoch:
>>
>> Hi all.
>>>
>>> I'm using CMake 2.8.10.2 to do a Visual Studio 2010 64-bit build, and I
>>> encountered a weird problem with the CMake configure step failing, with
>>> the
>>> following output:
>>>
>>> CMake Error at C:/Program Files (x86)/CMake
>>> 2.8/share/cmake-2.8/Modules/**CMakeCXXInformation.cmake:37
>>> (get_filename_component):
>>> get_filename_component called with incorrect number of arguments
>>> Call Stack (most recent call first):
>>> CMakeLists.txt:2 (PROJECT)
>>>
>>
>> CMAKE_CXX_COMPILER is empty at that point.
>>
>>
>> I managed to pinpoint this to an issue with try_compile in FindQt4. I am
>>> attaching a minimal test case as well as output of cmake --trace. The
>>> CMakeList is just this:
>>>
>>
>> I don't see a try_compile in FindQt4.
>>
>> Eike
>>
>> --
>>
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at http://www.kitware.com/**
>> opensource/opensource.html<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<http://www.cmake.org/Wiki/CMake_FAQ>
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.cmake.org/mailman/**listinfo/cmake<http://www.cmake.org/mailman/listinfo/cmake>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20130429/a187ee34/attachment.htm>
More information about the CMake
mailing list