
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.

