wolfgar / meta-stef

yocto layer for imx6 xbmc image
MIT License
4 stars 9 forks source link

xbmc compile error #1

Closed embarcados closed 10 years ago

embarcados commented 10 years ago

I'm using dora branch for poky, meta-fsl-arm, meta-fsl-arm-extra, meta-stef and meta-openembedded My machine is cubox-i.

I'm receiving this error:

| LD      xbmc.bin
| xbmc/windowing/egl/windowing_egl.a(EGLNativeTypeIMX.o): In function `CEGLNativeTypeIMX::CreateNativeWindow()':
| /media/dsueiro/WORK/elabworks/yocto/dora-build/tmp/work/cubox_i-poky-linux-gnueabi/xbmc/git-r5/git/xbmc/windowing/egl/EGLNativeTypeIMX.cpp:136: undefined reference to `fbCreateWindow'
| xbmc/windowing/egl/windowing_egl.a(EGLNativeTypeIMX.o): In function `CEGLNativeTypeIMX::DestroyNativeDisplay()':
| /media/dsueiro/WORK/elabworks/yocto/dora-build/tmp/work/cubox_i-poky-linux-gnueabi/xbmc/git-r5/git/xbmc/windowing/egl/EGLNativeTypeIMX.cpp:164: undefined reference to `fbDestroyDisplay'
| xbmc/windowing/egl/windowing_egl.a(EGLNativeTypeIMX.o): In function `CEGLNativeTypeIMX::DestroyNativeWindow()':
| /media/dsueiro/WORK/elabworks/yocto/dora-build/tmp/work/cubox_i-poky-linux-gnueabi/xbmc/git-r5/git/xbmc/windowing/egl/EGLNativeTypeIMX.cpp:172: undefined reference to `fbDestroyWindow'
| xbmc/windowing/egl/windowing_egl.a(EGLNativeTypeIMX.o): In function `CEGLNativeTypeIMX::CreateNativeDisplay()':
| /media/dsueiro/WORK/elabworks/yocto/dora-build/tmp/work/cubox_i-poky-linux-gnueabi/xbmc/git-r5/git/xbmc/windowing/egl/EGLNativeTypeIMX.cpp:129: undefined reference to `fbGetDisplayByIndex'
| collect2: error: ld returned 1 exit status
| make: *** [xbmc.bin] Error 1
| ERROR: oe_runmake failed

This is raised because it is trying to link with libEGL-x11.so which doesn't have these symbols.

I've added DISTRO_FEATURES_remove = "x11 wayland" on local.conf to force the use of libEGL-fb.so but it raised errors for some packages that depends on X11: networkmanager consoleki upower polkit

How can I get this solved?

wolfgar commented 10 years ago

Hi, I confirm the issue is you try to link against the wrong libEGL library If you want to use yocto to build from scratch an image I would recommend to start with my layer : You can have a look at my blog (paragraph "Rebuild your own distro") then just add a new machine for cuboxi and add the specific kernel and uboot recipes : it should give you a first working template...

rehsack commented 10 years ago

I run into the same problem - and you're layer provides just x11 based images :)

I solved the linking problem by following the advice of https://groups.google.com/forum/#!topic/wandboard/PHv-yXyhEWM

Generally it seems that a non-x11 build isn't tested well for your layer (no attack, just a mind).

I added following lines to local.conf to improve:

DISTRO_FEATURES_append = " pam " PACKAGECONFIG_remove = " consolekit " IMAGE_INSTALL += " libsdl libfslvpuwrap xbmc"

I'm to junior in Yocto to decide whether all of it it necessary or coming from other mistakes (I made).

wolfgar commented 10 years ago

My layer has always provided fb only image with XBMC I even never provided a x11 based xbmc image ...

rehsack commented 10 years ago

From my point of view it's a side-info, but when you insist:

time bitbake xbmc-image WARNING: Host distribution "Ubuntu-14.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution. WARNING: Unable to get checksum for u-boot-fslc SRC_URI entry env.txt: file could not be found | ETA: 00:00:09WARNING: Unable to get checksum for linux-boundary SRC_URI entry defconfig: file could not be found######################## | ETA: 00:00:00Parsing recipes: 100% |#####################################################################################################| Time: 00:00:19Parsing of 1629 .bb files complete (0 cached, 1629 parsed). 2032 targets, 140 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies ERROR: Nothing PROVIDES 'virtual/libx11' (but /home/sno/fsl-release-bsp/sources/poky/meta/recipes-support/consolekit/consolekit_0.4.6.bb DEPENDS on or otherwise requires it) ERROR: libx11-diet PROVIDES virtual/libx11 but was skipped: 'x11' not in DISTRO_FEATURES ERROR: libx11 PROVIDES virtual/libx11 but was skipped: 'x11' not in DISTRO_FEATURES ERROR: nativesdk-libx11 PROVIDES virtual/libx11 but was skipped: 'x11' not in DISTRO_FEATURES NOTE: Runtime target 'networkmanager' is unbuildable, removing... Missing or unbuildable dependency chain was: ['networkmanager', 'consolekit', 'virtual/libx11'] ERROR: Required build target 'xbmc-image' has no buildable providers. Missing or unbuildable dependency chain was: ['xbmc-image', 'networkmanager', 'consolekit', 'virtual/libx11']

Summary: There were 3 WARNING messages shown. Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

On the target:

/imx6/xbmc/bin/xbmc

sh: glxinfo: command not found XBMC needs hardware accelerated OpenGL rendering. Install an appropriate graphics driver.

AFAIK glxinfo is coming with mesa ...

wolfgar commented 10 years ago

Hi Rehsack I think there is a misunderstanding. As I stated in my previous answer my layer has always be used to create a fb only (no x11) xbmc image (and it has created many images for 6 different boards) Have you tired to use my build ("build" paragrah from this post for instance http://stephan-rafin.net/blog/2013/11/08/new-xbmc-yocto-image/) instructions from my blog or have you directly tried to use your own conf with it ?

Stephan

rehsack commented 10 years ago

Hi Stephan,

I'm Jens ;)

I used an own layer for the board, but I build my conf from yours.

When I do a build without x11, I run precisely into above error - and you see that it's coming from 'xbmc-image' over 'networkmanager' to 'consolekit' which needs 'virtual/libx11'. Maybe that is newly introduced - I play since 2 weeks with poky/yocto - so I cannot tell about past.

I also don't understand why libx11 requires x11 DISTRO_FEATURE - it's always possible and reasonable to have x11 clients without an x11 server. But DISTRO_FEATURE x11 builds (and starts) an x11 server.

wolfgar commented 10 years ago

Hi Jens,

You are right, it might be a recently added dependency because I have really used my conf and layer many many times without being faced with that dependency on x11 issue.. you use dora branch right ?

Stephan

rehsack commented 10 years ago

Yes, I'm on branch dora. When you're on irc, we can negotiate quicker

rehsack commented 10 years ago

I uploaded the used layer to rehsack/meta-jens and the manifest to a local fork of fsl-community-bsp-platform in https://github.com/rehsack/fsl-community-bsp-platform (only branch dora is modified).

https://gist.github.com/rehsack/e52447f526f90e1c12b3 is the local.conf, https://gist.github.com/rehsack/0e199addb23df5c79b15 is the conf/bblayers.conf