Техническая Спецификация для Microchip Technology SW006023-2
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:
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.
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.
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/
<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:
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:
options:
• Size versus speed (-Os vs. -O3)
• 16-bit versus 32-bit (-mips16 vs. -mno-mips16)