Compile-Probleme vdr-plugin-epg2vdr und vdr-epg-daemon unter openSUSE Leap 15.0

  • Hallo !




    Nach dem Update von openSUSE Leap 42.3 auf 15.0 lassen sich beide o.a. Plugins/Programme nicht mehr übersetzen.



    Die vdr-Version ist mit 2.4.0 gleich geblieben.



    U.a. haben sich die MYSQL-Packages/-Versionen geändert, weshalb es u.a. auch diverse Header-Files scheinbar nicht mehr gibt.




    rpm -qa | grep -i mysql | grep -i devel



    alt:




    libmysqlclient-devel-10.0.34-32.2.x86_64


    libmysqld-devel-10.0.34-32.2.x86_64



    neu:



    libmysqld-devel-10.2.15-lp150.2.3.2.x86_64


    libmysqlcppconn-devel-1.1.9-lp150.2.5.x86_64



    vdr-plugin-epg2vdr:



    ...


    Compile db ...


    db.c: In member function ‘int cDbConnection::errorSql(cDbConnection*, const char*, MYSQL_STMT*, const char*)’:


    db.c:1382:17: error: ‘CR_INVALID_CONN_HANDLE’ was not declared in this scope


    error == CR_INVALID_CONN_HANDLE ||


    ^~~~~~~~~~~~~~~~~~~~~~


    db.c:1382:17: note: suggested alternative: ‘CR_INVALID_BUFFER_USE’


    error == CR_INVALID_CONN_HANDLE ||


    ^~~~~~~~~~~~~~~~~~~~~~


    CR_INVALID_BUFFER_USE


    db.c:1386:17: error: ‘CR_CONN_UNKNOW_PROTOCOL’ was not declared in this scope


    error == CR_CONN_UNKNOW_PROTOCOL ||


    ^~~~~~~~~~~~~~~~~~~~~~~


    db.c:1386:17: note: suggested alternative: ‘CR_CONN_UNKNOWN_PROTOCOL’


    error == CR_CONN_UNKNOW_PROTOCOL ||


    ^~~~~~~~~~~~~~~~~~~~~~~


    CR_CONN_UNKNOWN_PROTOCOL


    make[1]: *** [Makefile:87: db.o] Fehler 1


    make: *** [Makefile:117: hlib] Fehler 2



    vdr-epg-daemon:



    ...


    (cd lib && make lib)


    make[1]: Verzeichnis „/backup/privat/tv/dvb/tools/vdr-epg-daemon/lib“ wird betreten


    make[1]: Für das Ziel „lib“ ist nichts zu tun.


    make[1]: Verzeichnis „/backup/privat/tv/dvb/tools/vdr-epg-daemon/lib“ wird verlassen


    g++ -rdynamic main.o update.o plugin.o epgdconfig.o channelmap.o series.o svdrpclient.o levenshtein.o episode.o tvdbmanager.o moviedbmanager.o tools/fuzzy.o tools/stringhelpers.o scraper/thetvdbscraper/thetvdbscraper.o scraper/thetvdbscraper/tvdbseries.o scraper/thetvdbscraper/tvdbmirrors.o scraper/thetvdbscraper/tvdbmedia.o scraper/thetvdbscraper/tvdbactor.o scraper/thetvdbscraper/tvdbepisode.o scraper/themoviedbscraper/themoviedbscraper.o scraper/themoviedbscraper/moviedbmovie.o scraper/themoviedbscraper/moviedbactor.o -L./lib -lhorchi -lrt -lz -larchive -ldl -lcrypto -luuid -L/usr/lib64 -lmariadb -lz -ldl -lm -lpthread -lssl -lcrypto -lpython2.7 -lpthread -ldl -lutil -lm -ljansson -lcurl -lxml2 -lz -llzma -lm -ldl -lxslt -lexslt -o epgd


    g++ -rdynamic epgdconfig.o webstore.o webdo.o webauth.o webtools.o httpd.o svdrpclient.o -L./lib -lhorchi -lmicrohttpd -lrt -lz -larchive -ldl -lcrypto -luuid -L/usr/lib64 -lmariadb -lz -ldl -lm -lpthread -lssl -lcrypto -lpython2.7 -lpthread -ldl -lutil -lm -ljansson -lcurl -lxml2 -lz -llzma -lm -ldl -lxslt -lexslt -ljpeg -L/usr/lib64 -lImlib2 -o epghttpd


    make[1]: Für das Ziel „all“ ist nichts zu tun.


    (cd epglv && make)


    make[1]: Verzeichnis „/backup/privat/tv/dvb/tools/vdr-epg-daemon/epglv“ wird betreten


    gcc -c -Wall -fPIC -I/usr/local/include/mysql -L/usr/lib/mysql -L/usr/local/lib/mysql -I/usr/include/mysql -L/usr/lib64 -lmariadb -lz -ldl -lm -lpthread -lssl -lcrypto -DMYSQL_DYNAMIC_PLUGIN -DDEBUG_MYSQL=0 -pipe -O3 -shared src/epglvbase.c -o src/epglvbase.o


    In file included from src/epglvbase.c:10:0:


    src/epglv.h:16:11: fatal error: my_global.h: Datei oder Verzeichnis nicht gefunden


    # include <my_global.h>


    ^~~~~~~~~~~~~


    compilation terminated.


    make[1]: *** [Makefile:53: src/epglvbase.o] Fehler 1


    make[1]: Verzeichnis „/backup/privat/tv/dvb/tools/vdr-epg-daemon/epglv“ wird verlassen


    make: *** [Makefile:77: lv] Fehler 2



    Grüße,


    Dirk

  • Wende folgenden Patch für epg2vdr an:

    https://projects.vdr-developer.org/issues/2514


    Stefan

  • Hallo !


    Ok, beim Plugin epg2vdr hilft der Patch, aber nicht beim vdr-epg-daemon:


    (cd lib && make lib)

    make[1]: Entering directory '/backup/privat/tv/dvb/tools/vdr-epg-daemon/lib'

    make[1]: Nothing to be done for 'lib'.

    make[1]: Leaving directory '/backup/privat/tv/dvb/tools/vdr-epg-daemon/lib'

    g++ -rdynamic main.o update.o plugin.o epgdconfig.o channelmap.o series.o svdrpclient.o levenshtein.o episode.o tvdbmanager.o moviedbmanager.o tools/fuzzy.o tools/stringhelpers.o scraper/thetvdbscraper/thetvdbscraper.o scraper/thetvdbscraper/tvdbseries.o scraper/thetvdbscraper/tvdbmirrors.o scraper/thetvdbscraper/tvdbmedia.o scraper/thetvdbscraper/tvdbactor.o scraper/thetvdbscraper/tvdbepisode.o scraper/themoviedbscraper/themoviedbscraper.o scraper/themoviedbscraper/moviedbmovie.o scraper/themoviedbscraper/moviedbactor.o -L./lib -lhorchi -lrt -lz -larchive -ldl -lcrypto -luuid -L/usr/lib64 -lmariadb -lz -ldl -lm -lpthread -lssl -lcrypto -lpython2.7 -lpthread -ldl -lutil -lm -ljansson -lcurl -lxml2 -lz -llzma -lm -ldl -lxslt -lexslt -o epgd

    g++ -rdynamic epgdconfig.o webstore.o webdo.o webauth.o webtools.o httpd.o svdrpclient.o -L./lib -lhorchi -lmicrohttpd -lrt -lz -larchive -ldl -lcrypto -luuid -L/usr/lib64 -lmariadb -lz -ldl -lm -lpthread -lssl -lcrypto -lpython2.7 -lpthread -ldl -lutil -lm -ljansson -lcurl -lxml2 -lz -llzma -lm -ldl -lxslt -lexslt -ljpeg -L/usr/lib64 -lImlib2 -o epghttpd

    make[1]: Nothing to be done for 'all'.

    (cd epglv && make)

    make[1]: Entering directory '/backup/privat/tv/dvb/tools/vdr-epg-daemon/epglv'

    gcc -c -Wall -fPIC -I/usr/local/include/mysql -L/usr/lib/mysql -L/usr/local/lib/mysql -I/usr/include/mysql -L/usr/lib64 -lmariadb -lz -ldl -lm -lpthread -lssl -lcrypto -DMYSQL_DYNAMIC_PLUGIN -DDEBUG_MYSQL=0 -pipe -O3 -shared src/epglvbase.c -o src/epglvbase.o

    In file included from src/epglvbase.c:10:0:

    src/epglv.h:16:11: fatal error: my_global.h: No such file or directory

    # include <my_global.h>

    ^~~~~~~~~~~~~

    compilation terminated.

    make[1]: *** [Makefile:53: src/epglvbase.o] Error 1

    make[1]: Leaving directory '/backup/privat/tv/dvb/tools/vdr-epg-daemon/epglv'

    make: *** [Makefile:77: lv] Error 2



    Grüße,


    Dirk