4.5.4 Linking and Assembling

Next: 4.5.5 Command-Line Options Up: 4.5 The PIC14 port Previous: 4.5.3 Interrupt Code Contents Index

## 4.5.4 Linking and Assembling

For assembling you can use either GPUTILS' gpasm.exe or MPLAB's mpasmwin.exe. GPUTILS are available from http://sourceforge.net/projects/gputils. For linking you can use either GPUTILS' gplink or MPLAB's mplink.exe. If you use MPLAB and an interrupt function then the linker script file vectors section will need to be enlarged to link with mplink.
Here is a `Makefile` using GPUTILS:

> `.c.o:`
> `sdcc -V -mpic14 -p16f877 -c $<`
> `$(PRJ).hex: $(OBJS)`
> `gplink -m -s $(PRJ).lkr -o $(PRJ).hex $(OBJS) libsdcc.lib`

Here is a `Makefile` using MPLAB:

> `.c.o:`
> `sdcc -S -V -mpic14 -p16f877 $<`
> `mpasmwin /q /o $*.asm`
> `$(PRJ).hex: $(OBJS)`
> `mplink /v $(PRJ).lkr /m $(PRJ).map /o $(PRJ).hex $(OBJS) libsdcc.lib`

Please note that indentations within a `Makefile` have to be done with a tabulator character.