[gentoo]logger error bij compilatie powerdns

Pagina: 1
Acties:

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
Hoi

Ik probeer pdns hier te compileren op x86_64 met een gentoo systeem. Voor mensen gaan roepen : neem de package manager!!! :

Dit heb ik als eerste gedaan (portage is erg fijn imo), maar ik kan dan niet echt de configuratiemanual volgen zoals deze door de auteurs van pdns aan wordt geboden. Daar moet je /etc/init.d/pdns monitor doen. Resultaat:
code:
1
2
3
4
5
root@dionysos pdns-2.9.17 # /etc/init.d/pdns monitor
 * ERROR:  wrong args. (  monitor / monitor )

 * Usage: pdns { start|stop|restart }
 *        pdns without arguments for full help


Ik heb geen reden om aan de manual te twijfelen, dus compileer ik maar gewoon:

./configure --with-modules="gmysql"

Gaat keurig :)

make echter levert dit op:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
boudewijn@dionysos pdns-2.9.17 $ make
make  all-recursive
make[1]: Entering directory `/home/boudewijn/pdns-2.9.17'
Making all in modules
make[2]: Entering directory `/home/boudewijn/pdns-2.9.17/modules'
Making all in gmysqlbackend
make[3]: Entering directory `/home/boudewijn/pdns-2.9.17/modules/gmysqlbackend'
source='gmysqlbackend.cc' object='gmysqlbackend.lo' libtool=yes \
depfile='.deps/gmysqlbackend.Plo' tmpdepfile='.deps/gmysqlbackend.TPlo' \
depmode=gcc3 /bin/sh ../../depcomp \
/bin/sh ../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/mysql    -D_GNU_SOURCE  -Wall -O2 -c -o gmysqlbackend.lo `test -f 'gmysqlbackend.cc' || echo './'`gmysqlbackend.cc
 g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/mysql -D_GNU_SOURCE -Wall -O2 -c gmysqlbackend.cc -MT gmysqlbackend.lo -MD -MP -MF .deps/gmysqlbackend.TPlo  -fPIC -DPIC -o .libs/gmysqlbackend.o
In file included from gmysqlbackend.cc:10:
../../pdns/dnspacket.hh: In member function `int DNSPacket::parse(const char*, int)':
../../pdns/dnspacket.hh:305: error: ambiguous overload for 'operator<<' in '(+(+(+(+(+(+theL(((const std::string&)(&string(((const char*)""), ((const std::allocator<char>&)((const std::allocator<char>*)(&allocator<char>()))))))))->Logger::operator<<( Warning))->Logger::operator<<(((const std::string&)(&string(((const char*)"Ignoring packet: question too short from "), ((const std::allocator<char>&)((const std::allocator<char>*)(&allocator<char>()))))))))->Logger::operator<<(((const std::string&)((const std::string*)(&DNSPacket::getRemote() const())))))->Logger::operator<<(((const std::string&)(&string(((const char*)", offset "), ((const std::allocator<char>&)((const std::allocator<char>*)(&allocator<char>()))))))))->Logger::operator<<((offset + 15)))->Logger::operator<<(((const std::string&)(&string(((const char*)">="), ((const std::allocator<char>&)((const std::allocator<char>*)(&allocator<char>()))))))) << (((std::string*)((DNSPacket*)this)) + 88u)->std::basic_string<_CharT, _Traits, _Alloc>::length [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]()'
../../pdns/logger.hh:111: note: candidates are: Logger& Logger::operator<<(const std::string&) <near match>
../../pdns/logger.hh:112: note:                 Logger& Logger::operator<<(int)
../../pdns/logger.hh:113: note:                 Logger& Logger::operator<<(unsigned int)
../../pdns/logger.hh:114: note:                 Logger& Logger::operator<<(Logger::Urgency) <near match>
make[3]: *** [gmysqlbackend.lo] Error 1
make[3]: Leaving directory `/home/boudewijn/pdns-2.9.17/modules/gmysqlbackend'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/boudewijn/pdns-2.9.17/modules'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/boudewijn/pdns-2.9.17'
make: *** [all] Error 2


Dit ziet eruit als gewoon een brakke source (ja ik kan C) , maar ik vraag me af of het aan mij ligt (zal wel, anders releasen ze het toch niet 8)7). Wat doe ik fout?

Mijn systeem info:
code:
1
Linux dionysos 2.6.11.6 #2 Mon Apr 4 13:54:54 CEST 2005 x86_64 AMD Engineering Sample    AuthenticAMD GNU/Linux


Ik heb natuurlijk al de manual gelezen en gegoogled:
http://mailman.powerdns.c...February/thread.html#2122
Dit is een van de resultaten, maar voor zover ik kan beoordelen schiet ik hier niets mee op.

Hier staat niks relevants:
http://doc.powerdns.com/changelog.html#CHANGELOG-2-9-17

en hier ook niet echt:
http://doc.powerdns.com/compiling-powerdns.html#UNIX-LINUX

[ Voor 27% gewijzigd door Boudewijn op 23-04-2005 22:10 . Reden: even laten zien dat ik gezocht heb ;) ]

Zaram module kopen voor je glasvezelaansluiting?


  • _JGC_
  • Registratie: Juli 2000
  • Nu online
Gebruik gewoon die ebuild en kijk in de powerdns source voor die RC scripts.
De reden waarom je dat ding niet gecompileerd krijgt is omdat PowerDNS nogal eens wat bugjes bevat die opgelost worden in ebuilds of debian packages. Zonder die patches compileert ie niet of is ie buggy, op Athlon64 compileert het dus gewoon niet zonder patches zoals je net ondervonden hebt.

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
gadsie zeg, wat smerig hebben ze dat opgelost :(
ik zal dat vanavond eens even gaan doen ... ik houd jullie op de hoogte.

Zaram module kopen voor je glasvezelaansluiting?


  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
heel tof hoor dat copieren van het initscript , maar nu komt er _helemaal_ geen output meer:

root@dionysos boudewijn # /etc/init.d/pdns monitor
root@dionysos boudewijn #


hmm weet iemand hoe dit zit?

Zaram module kopen voor je glasvezelaansluiting?


  • Bergen
  • Registratie: Maart 2001
  • Laatst online: 27-01 12:55

Bergen

Spellingscontroleur

Het script is geen binary, het is gewoon een tekstbestand. Je kunt 't dus gewoon in een editor openen en kijken wat er precies gebeurt. Dat is nou de kracht van de po... ehh.. van een open systeem. :)

[ Voor 22% gewijzigd door Bergen op 24-04-2005 02:35 ]


  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
$pdns_server --daemon=no --guardian=no --control-consol

Hij geeft hier inderdaad wel output als ik die regel los issue (btw: ik ben bekend met het feit dat een bash script gewoon plain text is ;) )


iig dank je

Zaram module kopen voor je glasvezelaansluiting?


  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
FYI : er zit inderdaad een fout in het initscript merk ik :)


prefix=/usr
exec_prefix=${prefix}
BINARYPATH=${exec_prefix}/bin
SBINARYPATH=${exec_prefix}/sbin
SOCKETPATH=/var/run


prefix was /usr/local...

gentoo installeert hem daar echter standaard niet.

Zaram module kopen voor je glasvezelaansluiting?


  • Coen Rosdorff
  • Registratie: Januari 2000
  • Niet online
BoudewijnLinux schreef op maandag 25 april 2005 @ 01:52:
prefix=/usr
exec_prefix=${prefix}
BINARYPATH=${exec_prefix}/bin
SBINARYPATH=${exec_prefix}/sbin
SOCKETPATH=/var/run
Dit ziet er meer uit als een stukje van configure ipv een init script....

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
ja lijkt....

lijken != zijn ;)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
boudewijn@dionysos bin # cat /etc/init.d/pdns
#!/bin/sh
# chkconfig: - 80 75
# description: PDNS is a versatile high performance authoritative nameserver

prefix=/usr
exec_prefix=${prefix}
BINARYPATH=${exec_prefix}/bin
SBINARYPATH=${exec_prefix}/sbin
SOCKETPATH=/var/run

[ -f "$SBINARYPATH/pdns_server" ] || exit 0

cd $SOCKETPATH
suffix=`basename $0 | awk -F- '{print $2}'`
if [ $suffix ]
then
        EXTRAOPTS=--config-name=$suffix
        PROGNAME=pdns-$suffix
else
        PROGNAME=pdns
fi

pdns_server="$SBINARYPATH/pdns_server $EXTRAOPTS"

doPC()
{
        ret=$($BINARYPATH/pdns_control $EXTRAOPTS $1 $2 2> /dev/null)
}


doPC ping
NOTRUNNING=$?

case "$1" in
        status)
                if test "$NOTRUNNING" = "0"
                then
                        doPC status
                        echo $ret
                else
                        echo "not running"
                fi
        ;;

et cetera, et cetera

Zaram module kopen voor je glasvezelaansluiting?


  • stiena
  • Registratie: Juni 2000
  • Laatst online: 11-02 20:35
ik heb PowerDNS gewoon uit de portage gehaald, en de monitor die jij zoekt zit ergens anders.

code:
1
2
3
4
5
6
7
8
root@servert stina # /etc/init.d/pdns monitor
 * ERROR:  wrong args. (  monitor / monitor )

 * Usage: pdns { start|stop|restart }
 *        pdns without arguments for full help
root@servert stina # pdns_server monitor
Apr 25 11:59:12 This is a standalone pdns
Apr 25 11:59:12 Listening on controlsocket in '/var/run/pdns.controlsocket'

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Topicstarter
ah ok dank je wel :)

goed dat ik dat zie


OT: weet iemand waarom ze dat gesplitst hebben (het doet niet terzake, maar ben gewoon even benieuwd ;) ).

Zaram module kopen voor je glasvezelaansluiting?

Pagina: 1