next up previous contents index
Next: 4.5.8 Known Bugs Up: 4.5 The PIC14 port Previous: 4.5.6 Environment Variables   Contents   Index

Subsections

4.5.7 The Library

The PIC14 library currently only contains support routines required by the compiler to implement multiplication, division, and floating point support. No libc-like replacement is available at the moment, though many of the common sdcc library sources (in device/lib) should also compile with the PIC14 port.

4.5.7.1 error: missing definition for symbol ``__gptrget1''

The PIC14 port uses library routines to provide more complex operations like multiplication, division/modulus and (generic) pointer dereferencing. In order to add these routines to your project, you must link with PIC14's libsdcc.lib. For single source file projects this is done automatically, more complex projects must add libsdcc.lib to the linker's arguments. Make sure you also add an include path for the library (using the -I switch to the linker)!

4.5.7.2 Processor mismatch in file ``XXX''.

This warning can usually be ignored due to the very good compatibility amongst 14bit PIC devices.

You might also consider recompiling the library for your specific device by changing the ARCH=p16f877 (default target) entry in device/lib/pic/Makefile.in and device/lib/pic/Makefile to reflect your device. This might even improve performance for smaller devices as unneccesary BANKSELs might be removed.


next up previous contents index
Next: 4.5.8 Known Bugs Up: 4.5 The PIC14 port Previous: 4.5.6 Environment Variables   Contents   Index
2008-12-05