PA OpenEmbedded support (WIP)

Samuel Stirtzel s.stirtzel at googlemail.com
Wed Feb 22 07:34:10 UTC 2012


2012/2/16 Laszlo Papp <lpapp at kde.org>:
>> If anyone could offer some tips (e.g. how to tweak
>> KDELibsDependencies.cmake in a cross compile environment), it would
>> help a lot.
>
> Depends on the type of the embedded system and cross-compilation. You
> can check out on the Community Open Build Service what I achieved for
> Harmattan [1] (No documentation and basically mobile profile).

The cross compile process looks like this:
Recipes contain meta informations that state how the packages will be
configured, build and installed, they contain variables (to the native
/ cross sysroots and so on) and are parsed for functions like
do_configure / do_compile etc. where configure, make or anything else
will be run.

It will be distinguished between the host, native and target environment.
Files from the host shouldn't be used and it can't be relied on
whether the user has any KDE package installed or not.
The native environment contains the tools kconf_compiler & automoc4,
which will be build from the recipe kdelibs4-native.bb.


For building kdelibs the KDELibsDependencies.cmake will be created at
runtime (and is correct since the toolchain redirects the paths to a
staging directory).
When the file would be used at configure time of other packages like
Nepomuk, errors like KDE__kdecore-NOTFOUND occur.
But the library was built and exists under the target (staging)
sysroot directory.

Therefore when cross compiling, the KDELibsDependencies.cmake will be
created at the do_configure function in kdelibs4-helper.bb (see [1])
The resulting file looks like this [2].
Since I'm not that familiar with KDE development, these settings might
be plain wrong.
Is there any way to debug this?
Of course the (absolute) paths entered there point to the right
directories, but it still fails to find the kdecore library, any
ideas?



> As for me, I actually try to package as many optional dependencies as
> possible to fit the library to any mobile application developer's
> need. What is not needed is mostly covered by the Mobile Profile.
> There might be platform specific crops though.

My approach is to first get the most fundamental things up and running.
There might be a target audience that only needs the basic functionality.
Everything else could be added as optional components later on.


[1] https://gitorious.org/openembedded-core-layers/meta-kde/blobs/master/recipes/kdelibs4-helper.bb
[2] http://pastebin.com/GZDup2LA
-- 
Regards
Samuel


More information about the Active mailing list