[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