Note: source file '../CM7/Src/main.c' - object file renamed from 'STM32H747I_DISCO_CM7\Exe\main.o' to 'STM32H747I_DISCO_CM7\Exe\main_1.o'.
时间: 2024-03-07 17:54:18 浏览: 148
这个提示表示Keil MDK在编译源文件时,将生成的目标文件从“main.o”重命名为“main_1.o”,以避免与其他文件重名。通常,这个提示是无害的,不会影响程序的编译和烧录。不过,如果您希望将目标文件命名为其他名称,可以通过以下步骤来实现:
1. 在Keil MDK中,打开您的项目,并在“Project”菜单下选择“Options for Target”选项。
2. 在“Options for Target”对话框中,选择“C/C++”选项卡,然后点击“Output”选项卡。
3. 在“Output”选项卡中,您可以更改目标文件的名称和路径。在“Object/Listing Modules”部分,您可以更改目标文件的前缀和后缀,以创建自己想要的文件名。
4. 点击“OK”按钮保存更改,并重新编译您的项目。现在,生成的目标文件将使用您指定的名称和路径。
总之,这个提示只是告诉您Keil MDK已经重命名了目标文件,以避免重名问题。如果您需要更改目标文件的名称或路径,可以在“Options for Target”对话框中进行更改。
相关问题
#include "stm32_lcd.h" ^~~~~~~~~~~~~ 1 error generated. compiling stm32_lcd.c... ../CM7/Src/stm32h7xx_hal_msp.c(20): warning: In file included from... ../CM7/Inc\main.h(30): error: 'stm32_lcd.h' file not found #include "stm32_lcd.h" ^~~~~~~~~~~~~ 1 error generated. compiling stm32h7xx_hal_msp.c... ../CM7/Src/stm32h7xx_it.c(20): warning: In file included from... ../CM7/Inc\main.h(30): error: 'stm32_lcd.h' file not found #include "stm32_lcd.h" ^~~~~~~~~~~~~ 1 error generated. compiling stm32h7xx_it.c... compiling stm32h7xx_hal_uart.c... ../CM7/Src/main.c(23): warning: In file included from... ../CM7/Inc\main.h(30): error: 'stm32_lcd.h' file not found #include "stm32_lcd.h" ^~~~~~~~~~~~~ 1 error generated. compiling main.c... "STM32H747I_DISCO_CM7\Exe\STM32H747I_DISCO_CM7.axf" - 4 Error(s), 0 Warning(s).
这个错误提示表明在编译过程中,找不到名为 "stm32_lcd.h" 的头文件,导致编译失败。一般来说,这种错误可能有以下几种原因:
1. 文件名或路径错误:请确保你的 "stm32_lcd.h" 文件名和路径是正确的,并且该文件位于正确的位置。
2. 编译器设置错误:在你的编译器中,可能需要添加包含文件的路径。你可以在编译器的设置中添加正确的包含路径,以确保编译器可以找到该头文件。
3. 头文件缺失:请检查你的工程文件夹中是否有 "stm32_lcd.h" 文件。如果没有,请将该文件添加到你的工程文件夹中。
你可以尝试按照以下步骤解决这个问题:
1. 确认 "stm32_lcd.h" 文件名和路径是否正确。
2. 在编译器设置中添加正确的包含文件路径。
3. 检查你的工程文件夹中是否有 "stm32_lcd.h" 文件,如果没有请添加该文件。
4. 重新编译你的工程,看是否仍然报错。
如果仍然出现错误,请尝试重新安装或更新你的编译器,并确保你的编译器版本与你的硬件兼容。
--cpu Cortex-M7.fp.dp *.o --library_type=microlib --strict --scatter "STM32H747I_DISCO_CM7\Exe\STM32H747I_DISCO_CM7.sct" --summary_stderr --info summarysizes --map --load_addr_map_info --xref --callgraph --symbols --info sizes --info totals --info unused --info veneers --list "STM32H747I_DISCO_CM7.map" -o STM32H747I_DISCO_CM7\Exe\STM32H747I_DISCO_CM7.axf
这段命令是 Keil uVision5 软件的 armclang 编译器的链接命令,用于将目标文件链接成可执行文件。这个命令包含了以下参数:
- `--cpu Cortex-M7.fp.dp`:指定链接器使用的目标处理器。
- `*.o`:指定链接器需要链接的目标文件,`*.o` 表示链接当前目录下所有的 `.o` 目标文件。
- `--library_type=microlib`:指定链接器使用的库类型为 `microlib`。
- `--strict`:启用严格模式。
- `--scatter "STM32H747I_DISCO_CM7\Exe\STM32H747I_DISCO_CM7.sct"`:指定链接器使用的链接脚本文件。
- `--summary_stderr`:将链接器的摘要信息输出到标准错误流。
- `--info summarysizes`:输出链接器的摘要信息。
- `--map`:生成链接器映射文件。
- `--load_addr_map_info`:生成可加载地址映射信息。
- `--xref`:生成交叉引用表。
- `--callgraph`:生成函数调用图。
- `--symbols`:生成符号表。
- `--info sizes`:输出每个目标文件的大小信息。
- `--info totals`:输出总大小信息。
- `--info unused`:输出未使用的符号信息。
- `--info veneers`:输出使用的 Veneer 信息。
- `--list "STM32H747I_DISCO_CM7.map"`:将链接器的详细信息输出到指定的文件中。
- `-o STM32H747I_DISCO_CM7\Exe\STM32H747I_DISCO_CM7.axf`:指定链接器生成的可执行文件的名称和路径。
你可以根据需要进行调整,例如,修改链接器使用的目标处理器、库类型、链接脚本文件等。
阅读全文