Trace the Library and System Calls a Program Makes

Edit Package ltrace

Ltrace is a program that runs the specified command until it exits. It
intercepts and records the dynamic library calls that are called by the
executed process and the signals that are received by that process. It
can also intercept and print the system calls executed by the program.

The program to trace need not be recompiled for this, so you can use
ltrace on binaries for which you do not have access to the source.

This is still a work in progress, so, for example, the tracking to
child processes may fail or some things may not work as expected.

Refresh
Refresh
Source Files
Filename Size Changed
baselibs.conf 0000000056 56 Bytes
ltrace-0.7.91-g6c6bcc3.tar.bz2 0000267585 261 KB
ltrace.changes 0000019345 18.9 KB
ltrace.spec 0000002964 2.89 KB
Latest Revision
Ruediger Oertel's avatar Ruediger Oertel (oertel) committed (revision 2)
- Update to git rev 6c6bcc3 (bsc#937655)
  ** Prototype libraries
     - Each DSO can now ship an ltrace config file (called prototype
       library) that ltrace will open when that DSO is loaded to process
       image.  See ltrace(1) for details.
     - ltrace.conf is no longer part of installation tarball.  Instead,
       we now ship libc.so.conf, libm.so.conf, libacl.so.conf, and
       syscalls.conf.  Those are now istalled to /usr/share/ltrace by
       default.  /etc/ltrace.conf and $HOME/.ltrace.conf are still
       loaded if present, and can contain arbitrary user configuration.
     - The option -F was retrofitted to be a colon-separated list of
       prototype libraries, and directories to look for prototype
       libraries in.  On Linux, ltrace looks into XDG_CONFIG_HOME,
       XDG_CONFIG_DIRS, and /usr/share/ltrace as well.
     - Wide character strings are supported in prototypes.  Use "string"
       lens as usual, but use array of integers as underlying type.
       libc.so.conf now contains prototypes of wide character functions.
     - Sole void function parameter such as in the following example, is
       now considered obsolete:
       | int fork(void); |
       This use is still accepted, taken to mean "hide(int)", but
       produces a warning, and will be removed in future.
     - Prototypes are now read from DWARF debug info, if available. This
       complements the data available in config files
  ** Architectural support
     - MIPS and MIPSel are now handled by the same backend.
     - ARMv6, ARMv7 and ARMv8 (AArch64) are supported, including full
       fetch backend.  ARMv8 backend doesn't support tracing of 32-bit
       binaries, as currently there's no 32-bit userspace available for
       ARM64 processors.
Comments 0
openSUSE Build Service is sponsored by