文件名称:编译器输出-freertos使用教程
文件大小:6.38MB
文件格式:PDF
更新时间:2024-06-28 09:11:07
MPLAB XC8C
4.5 编译器输出 编译器在编译过程中会创建许多文件。其中许多文件是中间文件。部分文件在编译完 成后会被删除,但许多文件会保留,用于对器件进行编程或用于调试目的。 4.5.1 输出文件 许多输出文件的名称使用与它们的源文件相同的基本名称。例如,源文件 input.c 将 创建一个名为 input.p1的 p 代码文件。 一些输出文件包含项目范围的信息,并且不与任何一个特定输入文件(如映射文件)直 接关联。如果未通过编译器选项指定这些输出文件的名称,其基本名称将基于命令行上 列出的第一个 C 源文件产生。如果未指定该类型的文件,则名称基于命令行上的第一个 输入文件 (无论其类型如何)。 如果使用 IDE (如 MPLAB X IDE)来指定编译器选项,则通常会有一个为每个应用程 序创建的项目文件。该项目的名称将用作项目范围输出文件的基本名称,除非用户另 外指定。但是,请查看您使用的 IDE 的手册,了解更多详细信息。 编译器能够直接生成许多由 8 位 PIC 单片机开发工具使用的输出文件格式。 xc8的默认行为是生成 Microchip 格式 COFF 和 Intel HEX 输出。除非通过驱动程序选 项更改,否则这些文件的基本名称将为项目名称。默认输出文件类型可以通过编译器选 项 (如 --OUTPUT 选项)控制。这些文件使用的扩展名是固定的,在第 4.8.44 节 “--OUTPUT= type:指定输出文件类型”中与该选项的说明一起列出了这些扩展名。 调试器使用 COFF 文件来获取关于项目的调试信息。编译器可以生成 ELF/DWARF 调 试器文件,虽然它们与 MPLAB IDE v8 和 MPLAB X IDE 的早期版本不兼容。要生成这 些文件,必须特别选择 ELF 输出。 ELF/DWARF 文件可用于进行更精确的调试。使用 这些文件可以修正几个与 COFF 相关的问题,这些问题会使您无法在 IDE 中正确查看 对象,特别是指针变量。在选择该选项之前,请确保所使用的 IDE 版本支持 ELF。 表 4-16 显示了使用 --OUTPUT选项时,可供 xc8使用的所有输出格式选项。“文件 类型”列中列出了用于输出文件的文件扩展名。 4.5.1.1 符号文件 默认情况下, xc8 会创建符号文件,它们用于生成调试输出文件,例如 COFF 和 ELF 文件。这些文件包括链接器生成的 SYM 文件(. sym扩展名)和 CMF 文件(.cmf扩 展名),以及由代码生成器生成的 SDB 文件 (.sdb扩展名)。 SDB 文件包含类型信息,SYM 和 CMF 文件包含地址信息。 CROMWELL应用程序会将 SDB、SYM/CMF 文件以及 HEX 文件进行组合来生成输出调试文件,例如 COFF 文件。 CMF 文件大体上取代较早的 SYM 文件格式。它们包含类似的信息,但 CMF 文件更详 细,支持生成更精确的调试文件。 注: 在本手册中,项目名称这一术语指代在 IDE 中创建的项目的名称,或在命 令行上指定的第一个 C 源文件的基本名称 (不带扩展名的文件名)。 2013-2014 Microchip Technology Inc. DS50002053D_CN 第 89 页