dns-terror (fastresolve-2.10_5) core dump na FreeBSD 10.x
Dan Lukes
dan at obluda.cz
Mon Feb 29 18:14:51 CET 2016
Miroslav Lachman wrote on 02/29/16 12:40:
> Zkusil jsem to se 4.7
> Core was generated by 'dns-terror'.
> Program terminated with signal 11, Segmentation fault.
> Loaded symbols for /usr/local/lib/gcc47/libstdc++.so.6
> Loaded symbols for /usr/lib/libc++.so.1
Tohle vypada smrtelne. Do jednoho binaru se prilinkovavaji c++ knihovny
portovyho GCC a soucasne systemovy c++ knihovny,
To je asi jako delat taborak na burty ve skladu benzinu.
Zrejme "USE_GCC" nezvladlo Make system toho zdrojaku presvedcit aby
vsude pouzilo GCC, cast prekladala nebo linkovala systemovym compilerem,
a to by byl zazrak, kdyby to fungovalo.
> (gdb) bt
To se nevyhrabalo ani z uvodni inicializace. Takrka jiste jsme jeste
nedosli ani k uzivatelovu main(). Coz ale s ohledem a avyse uvedene
neprekvapi.
> I kdyz i tak mi prijde ten seznam zavislosti jako obludne velky balik
Kdyz on je portovy system zavislosti na tohle trochu hrubej nastroj.
Zavisej pouze cely baliky na jinejch balicich. Nejde tam rict, celej
balik zavisi na A..Z, ale pokud pouzijes jen tyhle dve knihovny, tak ty
zavisej jen na 1-3.
Musel bys ten balik riznout - na cast, ktera vyrobi sdileny (runtime
potrebny) knihovny a cast, ktera by obsahovala zbytek. Prelozene
aplikace by pak zavisely jen a tom runtime baliku.
>>> No,porad's to jeste nezkusil zkompilovat s -O optimalizacema. ;-)
> Zmena je v tom, ze ted to hodi "Bus error (core dumped)", zatim co predtim to bylo "Segmentation fault (core dumped)"
> #4 0x00000000004021de in fatal_errno (what=0x7fffffffe3f8 "\020",
> errnoval=<value optimized out>) at dns-terror.cc:129
Ona ta chyba nastava taky na jinym miste. dns-terror.cc:129 je
fprintf(stderr, "%s: fatal error: %s: %s\n", program_name, what,
strerror(errnoval));
Jenze v bt by melo bejt videt kdo/odkud tu fatal_errno volal - a neni.
Zrejem je, ze to ej nova chyba. Smusny je, ze nevime ani, jestli k ni
doslo pred tim, nez by se kod dostal do kritickeho mista predchozi chybu
nebo potom. Takze nevime jestli jsme jednu chybu zamenili za druhou,
nebo "jen" pridali dalsi problem.
No, to ej uz opravdu na autora kodu. At tam nejak vyresi ten c++
konstrukt, co si na nej prekladac stezuje jako an nestandardni a nemelo
by ti to (v puvodnim prekladu a s puvodnimi optiony) padat - teda, pokud
tam pozdeji nebud eneco dalsiho.
Dan
More information about the Users-l
mailing list