LTRACE(1) LTRACE(1) (NAME) ltrace - (SYNOPSIS) ltrace [-e filter|-L] [-l|--library=library_pattern] [-x filter] [-S] [-b|--no-signals] [-i] [-w|--where=nr] [-r|-t|-tt|-ttt] [-T] [[-F|--config] pathlist] [-A maxelts] [-s strsize] [-C|--demangle] [-a|--align column] [-n|--indent nr] [-o|--output filename] [-D|--debug mask] [-u username] [-f] [-p pid] [[--] command [arg ...]] ltrace -c [-e filter|-L] [-l|--library=library_pattern] [-x filter] [-S] [-o|--output filename] [-f] [-p pid] [[--] command [arg ...]] ltrace -V|--version ltrace -h|--help (DESCRIPTION) ltrace (command) . . (system calls) . strace(1) . ltrace . (function prototypes) . (prototype libraries) ltrace.conf(5) . ltrace (PROTOTYPE LIBRARY DISCOVERY) . (OPTIONS) -a, --align column (column) ( / ). -A maxelts ("..."). . -b, --no-signals . -c . -C, --demangle (demangle) . (underscore) C++ . -D, --debug mask ltrace. mask . -Dh . -e filter ( PLT ) . (FILTER SPECIFICATIONS) (FILTER EXPRESSIONS) . -e . -e @MAIN . -f fork(2) clone(2). . -F, --config pathlist (:) . ( (PROTOTYPE LIBRARY DISCOVERY) ). (import) . -h, --help ltrace . -i (instruction pointer) . -l, --library library_pattern library_pattern . library_pattern -e . . library_pattern (FILTER SPECIFICATIONS) (FILTER EXPRESSIONS) . LD_PRELOAD . -x @library_pattern . -L -e @MAIN . . -n, --indent nr nr (space) . . ( C++) . -o, --output filename filename (stderr). -p pid pid . . -p . -r . . -s strsize ( ). -S . -t . -tt . -ttt (epoch) . -T . . -u username (userid) (groupid) username. (root) setuid / setgid . -w, --where nr (backtrace) nr . elfutils libunwind . -x filter ( PLT -e ). (FILTER SPECIFICATIONS) (FILTER EXPRESSIONS) . -x . -x . -V, --version ltrace . (FILTER SPECIFICATIONS) -l -e -x . : -x << ( )>> -e << ( )>> -l << >> tstlib.h : void func_f_lib(void); void func_g_lib(void); tstlib.c : #include "tstlib.h" void func_f_lib(void) { func_g_lib(); } void func_g_lib(void) { } tst.c : #include "tstlib.h" void func_f_main(void) { } void main(void) { func_f_main(); func_f_lib(); } (link) -Bsymbolic func_g_lib() PLT ltrace : $ ltrace -x 'func*' -L ./tst func_f_main() = func_f_lib@tstlib.so( func_g_lib@tstlib.so() = <... func_f_lib resumed> ) = +++ exited (status 163) +++ $ ltrace -e 'func*' ./tst tst->func_f_lib( tstlib.so->func_g_lib() = <... func_f_lib resumed> ) = +++ exited (status 163) +++ $ ltrace -l tstlib.so ./tst tst->func_f_lib( tstlib.so->func_g_lib() = <... func_f_lib resumed> ) = +++ exited (status 163) +++ -Bsymbolic func_g_lib() PLT ltrace : $ ltrace -x 'func*' -L ./tst func_f_main() = func_f_lib@tstlib.so( func_g_lib@tstlib.so() = <... func_f_lib resumed> ) = +++ exited (status 163) +++ $ ltrace -e 'func*' ./tst tst->func_f_lib() = +++ exited (status 163) +++ $ ltrace -l tstlib.so ./tst tst->func_f_lib() = +++ exited (status 163) +++ (FILTER EXPRESSIONS) glob (regexp) . malloc free libc : -e malloc+free-@libc.so* : malloc free libc . : {[+-][symbol_pattern][@library_pattern]} symbol_pattern library_pattern SONAME . glob ( ). glob * ? glob bash . ^ $ . symbol_pattern library_pattern . * . * ( malloc malloc@* @libc.* *@libc.* ). SONAME (basename) SONAME . : /bin/echo SONAME echo . MAIN SONAME MAIN ( ^MAIN [M]AIN ). (/ /) (regular expression) . /x/@/y/ /x@y/ . SONAME (path) . + . - @ . . . (unmarked) . + (marked) - . . (PROTOTYPE LIBRARY DISCOVERY) (map) ltrace (prototypes) . ltrace (type signature) : . << >> (prototype libraries) . ltrace SONAME . SONAME.conf protolib libc.so.6 libc.so.6.conf . ( ltrace ) ltrace . ( -x) . ( -e -l) . PLT (caller) (callee) . SONAME (basename) . ( protolib bin/echo/ echo.conf ). SONAME ( libc.so.6.conf) ltrace . ltrace protolib X.so . libc.so.conf libc.conf . ltrace . : $XDG_CONFIG_HOME/ltrace $HOME/.ltrace X/ltrace X $XDG_CONFIG_DIRS /usr/share/ltrace. XDG_CONFIG_HOME ltrace $HOME/.config/ltrace . (legacy) . $HOME/.ltrace.conf (import) . /etc/ltrace.conf. $HOME/.ltrace.conf /etc/ltrace.conf . -F -F . -F . ltrace ltrace.conf(5) . (BUGS) strace(1) . . (ltrace-devel@lists.alioth.debian.org) / reportbug(1) . (FILES) /etc/ltrace.conf ~/.ltrace.conf /etc/ltrace.conf . (AUTHORS) Juan Cespedes Petr Machata (SEE ALSO) ltrace.conf(5), strace(1), ptrace(2) January 2013 LTRACE(1)