getting CROSS COMPILE Badness when trying to compile vdr-graphlcd

  • Hi,

    I'm trying to make a package for the graphlcd plugin for vdr with the following basic entries:

    which results in this error message:

    Bash
    CROSS COMPILE Badness: /usr/include in INCLUDEPATH: /usr/include
    cc1plus: internal compiler error: in add_path, at incpath.c:473
    CROSS COMPILE Badness: /usr/include in INCLUDEPATH: /usr/include
    cc1plus: internal compiler error: in add_path, at incpath.c:473
    Please submit a full bug report,
    with preprocessed source if appropriate.
    See <https://gcc.gnu.org/bugs/> for instructions.
    Please submit a full bug report

    I couldn't find any helping explanations till now. May be someone can give me a hint.

    Thanks in advance

    Alex

  • Hm, actually I tried several versions containing functions from other plugins. The error message is allways the same. I just stripped the file down to eliminate other mistakes.
    graphlcd-base package ist installed, without errors.

    This is the complete package.mk

    This is the complete output, seems as if compiling doesn't even start:

  • Okay, that seems to work. Now it's complaining about a missing glcdskin/type.h, but that's doable. So thanks again.

    Maybe a short question about the locales: even if I copy the locale content to $INSTALL/usr/share/locale within the script, the folder /usr/share/locale doesn't show up in the image so that vdr doesn't find any locales.

  • I'm talking about the i18n *.mo files that are generated during the compilation of e.g. vdr. They should go into /usr/share/locale. But that folder doesn't exist. Neither in .install_pkg nor in the image tree. Event though I get this output

    Code
    cp -r locale/* /Data/Final/New/build.LibreELEC-Generic.x86_64-9.1-devel/vdr-2.4.0/.install_pkg/usr/share/locale
  • Files from addon can't be put in image.

    Maybe copying all locales at the end of vdr-addon package would help? But I'm not sure if vdr addon and plugins would see them. Maybe setting LANGUAGE variable in vdr start script would do.

    Code
    addon() {
      .......
    
      # copy all locales
      mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config
      cp -Pr $BUILD/vdr-*/locale $ADDON_BUILD/$PKG_ADDON_ID/config
    }

    I'm not VDR user so have no idea how to test.

  • LibreELEC vdr-addon is created without any vdr locale file.

    If you really do need them you have to configure and add locale for all packages.

  • LibreELEC vdr-addon is created without any vdr locale file.

    If you really do need them you have to configure and add locale for all packages.

    That's what I suggested with cp command: they are all copied to config folder. And vdr should pick them up.

  • Okay, maybe I expressed myself incorrectly.

    I removed all the vdr-addons from LibreELEC source because I wanted to use the available vdr frontends (which is to be honest a PITA with intel graphics). LE is compiled by myself. So my vdr package acts independent, which gives at least a better timer handling (e.g. acpi wakeup).

    The LANG variable is allready set in vdr, I copied the files as you both suggested (and as I described above) to the desired place. But obviously the config dir seems to be the better place, because /usr/share/locale is ignored, deleted or whatever.

  • Nope, except of the locale stuff everything is copied to the right place and the image is working well, so far.

    For now I can live with the config dir alternative. Thank you.

  • Code
    post_makeinstall_target() {
    mkdir -p $INSTALL/usr/config/vdr/locale
    mkdir -p $INSTALL/etc/vdr/conf.d
    mkdir -p $INSTALL/usr/bin
    
    cp -r $PKG_DIR/config/* $INSTALL/usr/config/vdr
    cp -r $PKG_BUILD/locale/ $INSTALL/usr/config/vdr/
    # was $INSTALL/usr/share/locale

    I finally found the directory where all the .mo files go (you get lost on all these directories ;) ) It's on toolchain/x86_64-libreelec-linux-gnu/sysroot/usr/share/locale/ . But as LE doesn't support localization it's simply ignored (what is my wild guess)

  • Sorry but I'm lost. If you are building vdr it is addon and nothing from it will come to image. Only if you add dependency with ADDITIONAL_PACKAGES or somewhere else then files from it can be added to image. And why do you need locale in image? In addon doesn't work?

  • Only if you add dependency with ADDITIONAL_PACKAGES or somewhere else then files from it can be added to image.

    I built my own virtual package, removed the LE vdr-addon packages, added an entry to script/image so that my packages are compiled and added to the image. Don't worry, that's all working fine and as expected.

    Quote

    And why do you need locale in image?

    Well, vdr or whatever program simply needs the translations of e.g. menu entries. These i18n files have to be stored somewhere. But now I use .config/vdr/locale. That's okay.

    Quote

    In addon doesn't work?

    The vdr addon that comes with LE uses Kodi as frontend, that has his own localization stored in the skin/language folder. I use vdr-plugins as frontend, where the translations are stored in traditional i18n files. That's all.

    Don't rack your brain, I'm getting there ;) Enjoy your Sunday.