MPLab C18 v3.38 Error – Device not specified. Use /p option to specify a device

If your using a different linker file than what comes with the compiler you will need to set the /p option for the linker to specify your processor manually. For some reason v3.38 doesn’t pick this up automatically. If this is not done, the following error message will probably be recieved:

Error – Device not specified. Use /p option to specify a device.

Setting the /p option is simple, click ‘Project – Build Options – Project’, go to the MPLINK Linker tab. Then check the ‘Use Alternate Settings’ check box.

The default string will look like:

/m"$(BINDIR_)$(TARGETBASE).map" /w /o"$(BINDIR_)$(TARGETBASE).cof"

Change this to (all on single line, WordPress format splits here, but should be single line):

/m"$(BINDIR_)$(TARGETBASE).map" /w /p18F2450 /o"$(BINDIR_)$(TARGETBASE).cof"

using your processor instead of the /p18F2450 in the above example. Note, there is no space between the p and the 1. It’s just the font makes it look like there is.