2302_81137322 2025-02-06 20:12 采纳率: 0%
浏览 178

使用 stm32cubeMX 生成 keilMDK 工程编译有 21 个错误

使用 stm32cubeMX 生成 keilMDK 工程编译有 21 个错误,尝试多种方式没有解决,求问

img

compiling system_stm32g4xx.c...
Error: C9555E: Failed to check out a license.
The license file could not be found. Check that ARMLMD_LICENSE_FILE is set correctly.
ARMLMD_LICENSE_FILE is not set. You must set this to the path to your license.
Information about this error is available at: http://ds.arm.com/support/lic87/m1
 General licensing information is available at: http://ds.arm.com/support/licensing/
 If you need further help, provide this complete error report to your supplier or license.support@arm.com.
 - ARMLMD_LICENSE_FILE: unset
 - LM_LICENSE_FILE: unset
 - ARM_TOOL_VARIANT: unset
 - ARM_PRODUCT_PATH: unset
 - Product location: F:\keil_MDK application\ARM\ARMCC\ARMCC\sw\mappings
 - Toolchain location: F:\keil_MDK application\ARM\ARMCC\ARMCC\Bin
 - Selected tool variant: product
 - Checkout feature: compiler5
 - Feature version: 5.0202006
 - Flex error code: -1
Product: ARM Compiler 5.06
Component: ARM Compiler 5.06 update 7 (build 960)
Tool: ArmCC [4d365d]
"HAL_LED_project\HAL_LED_project.axf" - 21 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed:  00:00:01

已解决👌
根据:最新keil5没有ARM CompilerV5或者安装编译器5.06后编译license报错

  • 写回答

7条回答 默认 最新

  • 道友老李 JWE233286一种基于机器视觉的水表指针读数识别及修正的方法 专利发明者 2025-02-06 20:12
    关注
    让【道友老李】来帮你解答,本回答参考gpt编写,并整理提供,如果还有疑问可以点击头像关注私信或评论。
    如果答案让您满意,请采纳、关注,非常感谢!
    问题分析: 在使用 STM32CubeMX 生成的 Keil MDK 工程时,遇到了 21 个编译错误,其中一个关键错误是未能找到合法的许可证文件。这提示我们需要配置 ARM 编译器的许可证。错误信息中的提示建议检查环境变量 `ARMLMD_LICENSE_FILE` 和 `LM_LICENSE_FILE`,因为这些变量未设置,导致编译器无法找到合法的许可证。 解决方案: 下面是逐步解决此问题的建议:

    步骤1:确认编译器是否安装

    确保已经安装了 ARM 编译器。可以在 Keil MDK 安装目录下的 ARMCC 文件夹中检查相关文件。

    步骤2:设置许可证路径

    1. 获取许可证文件:通常,许可证文件是由购买 ARM 开发工具时提供的。确保你已获得这个文件,并记住它的存放位置。
    2. 设置环境变量

      • 找到许可证文件(应该是 .lic 文件),如 license.lic
      • 设置环境变量 ARMLMD_LICENSE_FILE 指向许可证文件的路径。在 Windows 上,可以通过以下步骤进行设置:
        • 右键点击“此电脑”或者“我的电脑”,选择“属性”。
        • 点击“高级系统设置”,进入“环境变量”。
        • 点击“新建”,添加变量名 ARMLMD_LICENSE_FILE 和变量值(许可证文件的完整路径)。

      示例:

      ARMLMD_LICENSE_FILE = C:\path\to\your\license.lic
      

    步骤3:重启计算机

    在更改环境变量后,建议重启计算机以确保所有更改生效。

    步骤4:测试编译

    在设置完成后,重新打开 Keil MDK,尝试编译项目。如果设置正确,你应该能够成功编译,无错误产生。

    示例代码

    假设许可证文件路径为 C:\Keil\License\license.lic,你可以在控制台中使用命令行设置:

    set ARMLMD_LICENSE_FILE=C:\Keil\License\license.lic
    

    或者设置为系统环境变量。

    注意事项

    • 确保许可证文件没有损坏,并且是最新的。
    • 确认你使用的 Keil MDK 版本和 ARM 编译器版本是否匹配。
    • 如果问题仍然存在,建议联系 ARM 或 Keil 客户支持获取更多帮助。

    案例

    如果你还没有许可证文件,可以参考以下步骤: 1. 访问 ARM 的官方网站,查看是否可以获取试用许可证。 2. 作为替代方案,可以考虑使用其他 IDE 或编译器,如 STM32CubeIDE,它可免费使用并包含 STM32 的相应支持。 通过上述步骤,你应能解决编译错误并成功生成你的项目。如果还有其他问题,请提供更详细的信息。

    评论

报告相同问题?

问题事件

  • 修改了问题 2月6日
  • 创建了问题 2月6日