Debian 10 - sestavení balíku Bind 9.11 s Mysql backendem

Dobrý den ve spolek.
Nezkoušel zde někdo prosím sestavovat balík bind9-9.11.5.P4+dfsg s mysql SDB driverem http://mysql-bind.sourceforge.net/docs.php ?
Myslím si, že jsem udělal vše dle dokumentace. V Makefile jsem přidal odkazy na knihovny a zdroje mysql i driveru, v main.c jsem naincludoval hlavickovy soubor driveru a pridal volani fci. Soubory jsem nahral do zdroju. Snad vse dle dokumentace, zkousel sem to nekolikrat vzdy od znovu. Nicmene pokus o sestaveni baliku skonci vzdy s nasledujici chybou. Cely log prikladam.
Nejake napady?


Kód: [Vybrat]
/usr/bin/ld: .libs/main.o: in function `setup':
./build/bin/named-pkcs11/../../../bin/named-pkcs11/main.c:1248: undefined reference to `mysqldb_init'
/usr/bin/ld: .libs/main.o: in function `cleanup':
./build/bin/named-pkcs11/../../../bin/named-pkcs11/main.c:1296: undefined reference to `mysqldb_clear'
collect2: error: ld returned 1 exit status
make[4]: *** [Makefile:567: named-pkcs11] Error 1
make[4]: Leaving directory '/usr/src/bind9-9.11.5.P4+dfsg/build/bin/named-pkcs11'
make[3]: *** [Makefile:79: subdirs] Error 1
make[3]: Leaving directory '/usr/src/bind9-9.11.5.P4+dfsg/build/bin'
make[2]: *** [Makefile:88: subdirs] Error 1
make[2]: Leaving directory '/usr/src/bind9-9.11.5.P4+dfsg/build'
dh_auto_build: cd build && make -j2 returned exit code 2
make[1]: *** [debian/rules:133: override_dh_auto_build] Error 2
make[1]: Leaving directory '/usr/src/bind9-9.11.5.P4+dfsg'
make: *** [debian/rules:49: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2


Re:Debian 10 - sestavení balíku Bind 9.11 s Mysql backendem
« Odpověď #1 kdy: 27. 03. 2020, 19:10:19 »
No... po X hodinách snažení jsem se na sestavení balíku vybodl a provedl to ručně stručně:
Nainstaloval sem si standardní balík z repozitáře a zkopíroval si startup scripty, abych je nemuzsel delat rucne a balik odinstaloval.

Nasledne jsem stahl zdroje:
Kód: [Vybrat]
wget https://ftp.isc.org/isc/bind9/cur/9.11/bind-9.11.17.tar.gzrozbalil,
zkonfiguroval:
Kód: [Vybrat]
./configure --sysconfdir=/etc/bindstahl zdroje mysql odtud:
Kód: [Vybrat]
https://sourceforge.net/projects/mysql-bind/
nastavil driver:
Kód: [Vybrat]
vim bin/named/Makefile.in// najit a nahradit nasledujici:

DBDRIVER_OBJS = mysqldb.@O@
DBDRIVER_SRCS = mysqldb.c
DBDRIVER_INCLUDES = -I/usr/include/mariadb
DBDRIVER_LIBS = -L/usr/lib/x86_64-linux-gnu/ -lmariadb
 
upravit zdroj:
Kód: [Vybrat]
vim bin/named/main.cpridat:
#include "include/mysqldb.h"

najit - xxdb_init - a cridat init:
/* xxdb_init(); */
mysqldb_init();

a najit - xxdb_clear - a pridat clear:
/* xxdb_clear(); */
mysqldb_clear();

nakopirovat ze stazeneho driveru:
Kód: [Vybrat]
cp mysql-bind/mysqldb.* ./bin/named/
cp mysql-bind/mysqldb.* ./bin/named/include/

upravit zdroj:
Kód: [Vybrat]
vim bin/named/mysqldb.cnajit: #include <named/mysqldb.h>
a nahradit za: #include "include/mysqldb.h"


NYNI NA KOMPILACI:
Kód: [Vybrat]
make
make install

Hotovo funkcni. Je to skoda, radsi bych debianni balicek pro pripadnou budouci potrebu ale takto to funguje.