jzyjqqjzy 2024-04-10 19:08 采纳率: 0%
浏览 759
已结题

报错代码 C4065E 经多次查找后没有解决 不是空格问题

在使用stm32f407zgt6 从cubemx配置到keil5编程 编程后编译时发现报错代码 C4065E 经多次查找后没有解决 不是空格问题 报错报了一大堆文件
明明左边有文件 但是不支持,

img


这是在编译器5的情况下 如果用编译器6就会报错另一种

img

  • 写回答

23条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-04-10 19:08
    关注
    获得0.45元问题酬金

    引自免费微信小程序:皆我百晓生

    根据您提供的错误信息,项目在编译过程中遇到了多次相同的错误 C4065E: type of input file 'E:\eee\ARM\ARMCLANG\lib' unknown。这个错误表明编译器无法识别指定路径 E:\eee\ARM\ARMCLANG\lib 下的输入文件类型。以下是一些建议来排查和解决这个问题:

    1. 检查路径及文件存在性: 确认路径 E:\eee\ARM\ARMCLANG\lib 是否真实存在,且包含编译所需的库文件。如果路径不存在或文件缺失,请确保正确设置或重新安装相关工具链(如 Keil MDK 或 STM32CubeMX)以恢复缺失的库文件。

    2. 检查项目设置: 在 Keil µVision 中打开您的项目,检查以下项目设置是否正确:

      a. Target: 确保项目配置与实际使用的微控制器型号(STM32F407ZGT6)匹配。

      b. Toolchain: 根据错误信息中的 Using Compiler 'V5.06 update 7 (build 960)',您似乎正在使用 ARMCC(ARM Compiler 5)。请确认项目设置中是否选择了正确的编译器版本,并且没有混用不同版本的编译器或工具链。

      c. Include Paths: 检查项目的 Include 路径设置,确保包含 STM32 库文件的目录(如 E:\eee\ARM\ARMCLANG\lib)已被正确添加。如果未添加,将其添加到 Include 路径中。通常这些路径可以在 STM32CubeMX 生成的工程中找到,位于项目的 .cproject 文件中。

      d. Library Paths and Files: 查看 Linker 设置中的 Library Search Paths 和 Libraries 选项,确保它们指向正确的库文件路径(例如 E:\eee\ARM\ARMCLANG\lib),并包含必要的库文件(如 libarm_cortexM4lf_math.a 等)。如果有误,修正路径和库文件名。

    3. 清理并重建项目: 在完成上述检查和调整后,尝试清理(Clean)项目并重新构建(Rebuild All)。这有助于确保所有编译设置更改生效,并消除可能由旧编译产物导致的问题。

    4. 环境变量: 如果以上步骤未能解决问题,检查系统环境变量中是否有关于 ARM 工具链的设置,特别是 ARMCC_DIRARM_TOOLCHAIN_PATH。确保这些变量指向正确的 ARMCC 安装目录,且与项目中使用的编译器版本一致。

    如果问题仍然存在,请考虑以下额外措施:

    • 更新或重置开发环境:尝试更新 Keil µVision、STM32CubeMX 和 ARM Compiler 到最新版本,或者卸载后重新安装,确保工具链完整性。
    • 创建新项目:使用 STM32CubeMX 为您的 STM32F407ZGT6 微控制器重新生成一个项目,确保在生成过程中选择正确的工具链版本,并仔细检查生成的工程设置。

    通过上述步骤,应该能解决您遇到的 C4065E 错误。如果问题依然存在,请提供更详细的项目配置信息或截图,以便进一步分析。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 4月18日
  • 修改了问题 4月10日
  • 修改了问题 4月10日
  • 创建了问题 4月10日