title: How to specify path of kernel headers for non-kernel app in c?
body: <p>I need to transfer <code>fixp_t</code> typed number (defined at <code>&lt;linux/fixp-arith.h&gt;</code>, originally <code>s16</code>) from kernel module to client app using <code>ioctl</code>. Data types are very important, if variable size will differ - results can be very dangerous.</p>
  
  <p>If i include <code>&lt;linux/fixp-arith.h&gt;</code> in both kernel and client app source code, client app fails to compile, because it can't find linux headers.</p>
  
  <p>From other hand, <code>gcc -I/usr/src/linux-headers-3.16.0-4-common/include/ app.c -o app</code> does not work, because <code>&lt;linux/types.h&gt;</code> re-defines existing types and compilation fails.</p>
  
  <p>From other hand, i am scared to specify any data type by myself, because on every arch <code>s16</code>, and so <code>fixp_t</code> may be different.</p>
  
  <p>How is it possible to workaround this?</p>