[CMake] FindQt4.cmake fails

Andreas Pakulat apaku at gmx.de
Fri Dec 21 16:42:10 EST 2007


On 21.12.07 13:54:45, Clinton Stimpson wrote:
> On Dec 21, 2007, at 11:07 AM, Andreas Pakulat wrote:
>> On 21.12.07 18:46:53, Andreas Pakulat wrote:
>>> Hi,
>>>
>>> trying to build kdewin32 fails because CMake's CHECK_SYMBOL_EXISTS tries
>>> to compile the following source:
>>>
>>> ,----
>>> | #include <QtCore/qglobal.h>
>>> |
>>> | void cmakeRequireSymbol(int dummy,...){(void)dummy;}
>>> | int main()
>>> | {
>>> | #ifndef Q_WS_MAC
>>> |   cmakeRequireSymbol(0,&Q_WS_MAC);
>>> | #endif
>>> |   return 0;
>>> | }
>>> `----
>>>
>>>
>>> This is on a win32 machine, with Qt4.3.3 installed in C:\qt-4.3.3 and
>>> qmake is found properly. It bails out at the CHECK_SYMBOL_EXISTS. Using
>>> CMake 2.4.7
>>>
>>> Anybody with an idea? I don't quite understand why cmake generates this
>>> code, it doesn't make the slightest sense - if Q_WS_MAC is not defined
>>> it can't be used in a function call.
>>
>> I was fooled by the CMakeError file. The problem is that for some reason
>> FindQt4 wants to find both release and debug libraries. I don't have the
>> former as I did a pure debug build (I don't need release libs). Is that
>> a known problem?
>
> A debug only build should work.  Did you leave your QT_QT*LIBRARY_RELEASE 
> variables alone, so they should have NOT_FOUND in them?

Bah, got the logic wrong in FindQt4.cmake as well :) Yeap it should
work, but I suspect I really had to restart to get cmake to see my Qt4
location (I've been using a different location for Qt4 quite some time
ago and haven't touched the system since then). Anyway all is working
now, though I did copy the kdelibs FindQt4.cmake in the end as well.

Andreas

-- 
Keep it short for pithy sake.


More information about the CMake mailing list