Q. How do I install Strace utility under FreeBSD operating system so that I can trace and debug my applications and report 3rd party software bugs?
A. Strace is a process tracer, i.e. a debugging tool that prints out a trace of all the system calls made and signals received by a process itself or a process and its descendants.
Strace is similar to the native BSD truss utility, but it's output style is more convenient in most cases.
For strace to work, procfs has to be mounted. FreeBSD does not mount it by default.
First update FreeBSD ports collection and install strace from /usr/ports/devel/strace:
# portsnap fetch update
# cd /usr/ports/devel/strace
# make install clean
Mount /proc file system
You need to mount /proc filesystem to use trace command under FreeBSD, enter:
# mount -t procfs proc /proc
How do I use Strace tool?
Please see our previous FAQ / tutorials about strace command:
- Debugging Tip: Trace the Process and See What It is Doing with strace
- Truss like command under Linux to monitor and diagnostic the system calls