How to add header file for PIC24F08KL401 in MPLAB on MAC
If you're using the XC16 compiler family, all you need is:

#include &lt;xc.h&gt;


... since inside it, there's nothing more than lots of #ifdefs for every possible part!

/*
 *  xc.h 
 *
 *  Generic include file for XC16
 *
 *  Copyright 2012 Microchip Technology
 */

#if defined(__PIC24EP128GP202__)
#include &lt;p24EP128GP202.h&gt;
#endif

#if defined(__PIC24EP128GP204__)
#include &lt;p24EP128GP204.h&gt;
#endif

#if defined(__PIC24EP128GP206__)
#include &lt;p24EP128GP206.h&gt;
#endif

#if defined(__PIC24EP128MC202__)
#include &lt;p24EP128MC202.h&gt;
#endif

#if defined(__PIC24EP128MC204__)
#include &lt;p24EP128MC204.h&gt;
#endif

#if defined(__PIC24EP128MC206__)
#include &lt;p24EP128MC206.h&gt;
#endif

#if defined(__PIC24EP256GP202__)
#include &lt;p24EP256GP202.h&gt;
#endif

#if defined(__PIC24EP256GP204__)
#include &lt;p24EP256GP204.h&gt;
#endif

#if defined(__PIC24EP256GP206__)
#include &lt;p24EP256GP206.h&gt;
#endif

/* ...etc etc and so on */


This of course is conditional on having a properly set-up project within MPLABX and a properly set-up compiler.

The project setup will take care of defining the appropriate __PIC24xxxxxxxxx__ definition for the target part.

On Windows, the device-specific .h files are in

\vX.XX\support\family\h


where vX.XX is the compiler version, and family is the part family (PIC24E, PIC24F, PIC24H, DSPIC30F, DSPIC33E, DSPIC33F).

In each of those subfolders is a family-generic header file: for example

\v1.26\support\dsPIC33E\h\p33Exxxx.h


which, much like xc.h, is nothing but #ifdefs and #includes - only for that specific family, of course.