[Announce] vdr-plugin-skinelchi-0.1.1pre2 (Elchi-Skin als Plugin) für vdr >=1.3.18

  • Hallo,
    ich kann das Elchi-Skin in der Version 0.1.1pre2 nicht kompilieren. Kann mir hier jemand weiterhelfen?


    Auszug des Kompilierens:

    Code
    g++ -march=nocona -O2 -pipe -fPIC -fPIC -fPIC -fPIC -fPIC -c -DCONFDIR=\"/etc/vdr\" -DUSE_CHANNELSCAN -DUSE_CUTTERLIMIT -DUSE_CUTTERQUEUE -DUSE_CUTTIME -DUSE_DOLBYINREC -DUSE_DVDARCHIVE -DUSE_GRAPHTFT -DUSE_JUMPPLAY -DUSE_LIEMIKUUTIO -DUSE_PLUGINMISSING -DUSE_SORTRECORDS -DUSE_WAREAGLEICON -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"skinelchi"' -DHAVE_IMAGEMAGICK -I/usr/include/  skinelchi.c
    skinelchi.c:25: error: expected unqualified-id before string constant
    skinelchi.c:25: error: expected initializer before string constant
    make: *** [skinelchi.o] Error 1


    An Zeile 25 von skinelchi.c steht folgendes:

    Code
    static const char *VERSION      = "0.1.1pre2";


    Ich wundere mich doch sehr, dass eine Konstantenzuweisung Probleme bereitet. :schiel Übrigendes, wenn ich diese Zeile auskommentiere lässt sich das Plugin bauen.



    Gruß, Tomekki

  • Hallo FireFly,
    ich habe ein x86_64 System (Gentoo).
    Ich setzte vdr 1.4.7 ein. Eben habe ich es auch mit 1.5.9 probiert. Auch hier habe ich den gleichen Fehler.




    gcc:

    Code
    # gcc -v
    Using built-in specs.
    Target: x86_64-pc-linux-gnu
    Configured with: /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --enable-secureplt --disable-libunwind-exceptions --enable-multilib --enable-libmudflap --disable-libssp --disable-libgcj --enable-languages=c,c++ --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu
    Thread model: posix
    gcc version 4.1.2 (Gentoo 4.1.2)


    Gruß, Tomekki

  • Dann denke ich, dass der gcc das "Problem" ist weil er den Ausdruck nicht mag. Ich sehe grade, dass ich auch gcc 4.1.2 habe (Suse) und bei mir läufts grundsätzlich. Hast Du das Problem auch bei anderen Plugins? Die Zeile steht sinngemäß nämlich eigentlich in jedem Plugin. Includen die anderen Plugins irgendwas, was bei skinelchi nicht drin ist? Ist in der Zeile vor Zeile 25 vielleicht irgendwas falsch, so dass er Zeile 25 nicht mehr richtig interpetiert?

  • Hallo,


    ich habe das gleiche Problem (Gentoo, i386, gcc 4.1.2).


    Gibt es hier eine Lösung?

    Asus Pundit-R - TechniSat Skystar2 - Creative DXR3 - Celeron 2,8 GHz - 256 MB Ram - Samsung SV1604N (160 GB HDD, 2 MB Cache, 5400 rpm) - NEC ND2500A (8x DVD R/W)
    Gentoo - 2.6.20 Kernel (Gentoo-Sources) - VDR 1.4.7 mit Plugins

  • Hallo Leute,


    das Problem ist, dass in /usr/include/magick/magick-config.h ein Makro mit dem Namen VERSION definiert wird. Dadurch ersetzt der Präprozessor den Namen durch etwas wie "6.3.5", was der Compiler natürlich nicht mag.


    Keine Ahnung, welcher Teufel die imagemagick-Entwickler geritten hat, so einen Allerweltsnamen in einem globalen Header zu verwenden. Könnte mir vorstellen, das einige andere Projekte dasselbe Problem haben.


    Der einfachste Weg, das Plugin trotzdem zu übersetzen ist, es ohne imagemagick-Unterstützung zu übersetzen. Bei meinem Gentoo-System kann man das so erreichen:

    Code
    echo "media-plugins/vdr-skinelchi -imagemagick" >> /etc/portage/package.use


    Andere Möglichkeit mit imagemagick: Workaround in skinelchi.c: #undef nach dem #include "bitmap.h" einfügen, dann sieht's so aus:

    C
    #ifdef HAVE_IMAGEMAGICK
    #include "bitmap.h"
    // workaround for macro defined in /usr/include/magick/magick-config.h
    #undef VERSION
    #endif


    Viel Erfolg!


    Bernd

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!