Microchip Technology SW006023-2N Data Sheet

Page of 238
Compiler Command Line Driver
 2012 Microchip Technology Inc.
DS51686E-page 55
3.5
RUNTIME FILES
In addition to the C/C++ and assembly source files specified on the command line, 
there are also compiler-generated source files and pre-compiled library files which 
might be compiled into the project by the driver. These files contain:
• C/C++ Standard library routines
• Implicitly called arithmetic routines
• User-defined library routines
• The runtime start-up code
3.5.1
Library Files
The names of the C/C++ standard library files appropriate for the selected target 
device, and other driver options, are determined by the driver.
The target libraries, called multilibs, are built multiple times with a permuted set of 
options. When the compiler driver is called to compile and link an application, the driver 
chooses the version of the target library that has been built with the same options. 
By default, the 32-bit language tools use the directory 
<install-directory>/lib/gcc/
 to store the specific libraries and the directory 
<install-directory>/<pic32mx>/lib
 to store the target-specific libraries. Both 
of these directory structures contain subdirectories for each of the multilib combinations 
specified above. These subdirectories, respectively, are as follows:
1. .
2. ./size
3. ./speed
4. ./mips32
5. ./no-float
6. ./mips32/no-float
7. ./size/mips32
8. ./size/no-float
9. ./size/mips32/no-float
10../speed/mips32
11../speed/no-float
12../speed/mips32/no-float
The target libraries that are distributed with the compiler are built for the following 
options:
• Size versus speed (-Os vs. -O3)
• 16-bit versus 32-bit (-mips16 vs. -mno-mips16)