
Strace has been ported by Branko Lankester <branko@hacktic.nl>
to run on Linux systems.  Since then it has been greatly modified
by various other people.

If you want to compile strace on a Linux system please make sure that
you use recent kernel headers. Strace needs those to get the proper data
structures and constatns used by the kernel, since these can be
different from the structures that the C library uses. Currently you
will need at least a 2.2.7 or newer kernel.

To complicate things a bit further strace might not compile if you are
using development kernels. These tend to have headers that conflict with
the headers from libc which makes it impossible to use them.

There are three ways to compile strace with other kernel headers:
* Specify the location in CFLAGS when running configure

     CFLAGS=-I/usr/src/linux/include ./configure

* you can tell make where your kernel sources are. For example if you
  have your kernelsource in /usr/src/linux, you can invoke make like
  this:

     make CFLAGS="\$CFLAGS -I/usr/src/linux/include"

  (the extra \$CFLAGS is there to make sure we don't override any CFLAGS
  settings that configure has found).

* you can link /usr/include/linux and /usr/include/asm to the
  corresponding directories in your kernel source-tree.
