Portál AbcLinuxu, 13. srpna 2025 16:20


Dotaz: Lazeni knihoven

10.8.2005 16:18 Standula
Lazeni knihoven
Přečteno: 70×
Odpovědět | Admin
Zdravim vsechny,

potreboval bych poradit, jak ladit sdilene knihovny (*.so soubory) pomoci DDD pod OS MDK 10.0 offic.

Diky... za help
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

10.8.2005 16:36 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Lazeni knihoven
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ladění, proboha. Zdráhám se představit si, co je to lazení...

Ladíš je úplně stejně jako programy. Knihovnu zkompiluješ s -g či -ggdb (a bez -fomit-frame-pointer, -O3 a podobných vymožeností) a při instalaci ji nestripneš. Pak budeš moci trasovat volání knihovních funkcí normálně dovnitř knihovny a budeš normálně vidět ladicí informace.
elviin avatar 10.8.2005 17:13 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: Lazeni knihoven
Odpovědět | | Sbalit | Link | Blokovat | Admin

Nainstaluj si k ddd, gdb.

Preloz knihovnu mimo jine s parametry -g -ggdb. Slinkuj aplikaci. V ddd jdi na GDB Settings a zaskrtni autoloading of shared library symbols nebo edituj ~/.gdbinit a vloz tam "set auto-solib-add on". Vloz breakpoint a v menu jdi na Program | Run.

Musis mit nastavenou promennou
export LD_LIBRARY_PATH=.:/../knihovna.so.1

ddd se ridi major cislem, takze musis mit linku napr.:
ln -sf knihovna.so.1.0 knihovna.so.1

10.8.2005 17:39 Standula
Rozbalit Rozbalit vše Re: Ladeni knihoven
mozna bych mel upresnit, ze se jedna o *.so extensions pro PHP bezici jako modul pod APACHEm tudiz mi proto neni jasne jak to konkretne ladit...
10.8.2005 18:32 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Ladeni knihoven
Pokud to dává smysl používat s PHP z příkazové řádky (bez Apache), tak bych v gdb spustil celý interpret PHP. Jinak se můžeš zkusit přes gdb --pid attachnout k běžícímu forku apache, ale to už bude ,zajímavé`...
Luboš Doležel (Doli) avatar 10.8.2005 19:51 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Ladeni knihoven
V tomhle případě bych na tvém místě v tom modulu udělal hodně logování (do stdout nebo souboru).
10.8.2005 20:39 Standula
Rozbalit Rozbalit vše Re: Ladeni knihoven
Logovani do souboru samozrejme delam .. velice podrobne .. ovsem jedinou chybu kterou muzu vyhledat je v apaci => error.log cislo vlakna .. a Segmentation fault... potreboval bych videt struktury atd.. zkusim vyzkouset poustet to z CLI ...

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.