[Kde-games-devel] Problems with standalone KDE Game build

Ian Wadham iandw.au at gmail.com
Tue Aug 28 23:08:10 UTC 2012


On 28/08/2012, at 4:09 AM, Albert Astals Cid wrote:

> El Dilluns, 27 d'agost de 2012, a les 12:44:59, Ian Wadham va escriure:
>> On 27/08/2012, at 8:50 AM, Albert Astals Cid wrote:
>>> El Dilluns, 27 d'agost de 2012, a les 07:45:38, Ian Wadham va escriure:
>>>> On 27/08/2012, at 2:40 AM, Wolfgang Rohdewald wrote:
>>>>> Am Sonntag, 26. August 2012, 18:38:11 schrieb Ian Wadham:
>>>>>> No.  KPat and KReversi fail in exactly the same way - picking up old
>>>>>> incompatible includes of KDE Games libs (KGameRenderer specifically)
>>>>> 
>>>>> the old central CMakeLists.txt said
>>>>> 
>>>>> find_package(KDE4 4.3.80 REQUIRED)
>>>>> 
>>>>> where 4.3.80 is the minimum required version.
>>>>> 
>>>>> following that syntax, could you try to change kbreakout/CMakeLists.txt
>>>>> such that it says
>>>>> 
>>>>>      find_package(KDEGames 4.9.0 REQUIRED)
>>>>> 
>>>>> instead of
>>>>> 
>>>>>      find_package(KDEGames REQUIRED)
>>>>> 
>>>>> I do not expect this to fix the install path, but maybe compilation.
>>>> 
>>>> Yes! That fixed the standalone compilation, but not the install.
>>> 
>>> So with that only change all works for you except installation, right?
>> 
>> Right.
>> 
>> I guess that find_package follows the $KDEDIR trail I have set up in
>> $PATH, $LD_LIBRARY_PATH and similar, then finds a version >= 4.9.0.
>> OTOH, maybe it follows the "prepend CMAKE_INCLUDE_PATH $KDEDIR/include"
>> in my setup script.  There is nothing like the safety of wearing both belt
>> and braces … :-)
> 
> Thinking about it, no, the higher requirement can't help, we are still 
> including the kdegames headers first, which will obviously bring the "old" 
> includes first (in the case the files are named the same) and the compiler 
> does not know to magically exclude them.
> 
> So the include order needs to be reversed for your setup to work (i just 
> tried). I'll make sure it also works in my regular scenario and commit.

That's exactly the kind of thing I already have set up for $PATH, $LD_LIBRARY_PATH.
It's a pity there is no envorenment variable $INCLUDE_PATH in Linux/UNIX.

Heh, heh!  I can't wait to add my new QList class to libkdegames … :-)
Just joking …

> About your install problem, i can't reproduce, to me it would seem you are 
> simply not passing the appropiate CMAKE_INSTALL_PREFIX to cmake.

I checked that, and it was there OK in my cmakekde bash-function.  So I
tried renaming my build/kdegames directory (which is for all of KDE Games).

Then the standalone builds and installs worked fine.  Each standalone
build then created its own build/kdegames/<appname> directory.

So full builds and standalone builds do not mix.  Not a problem, but we
all need to take care ...

Thanks very much for your help, Albert and Wolfgang.

Cheers, Ian W.



More information about the kde-games-devel mailing list