关于Keil5编译器报错:ARMLMD_LICENSE_FILE: unset - 解决

文章讲述了在升级KeilMDK至V5.38后,由于默认支持编译器变化导致的构建失败问题。用户安装了ArmCompiler5(V5.06u7)并尝试设置为默认编译器,但遇到构建失败。解决方案是将ArmCompiler5安装在Keil的指定路径下,并配置为工程的编译器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    keil MDK版本更新到最新版本是V5.38。由于V5.38不支持编译器5,并且将默认编译器设置为编译器6,所以我安装了编译器5(Arm编译器版本5,V5.06更新7),带有独立补丁。然后将编译器5添加到keil ,设置编译器5为默认编译器,但是keil无法构建项目,构建输出部分打印如下,:

- ARMLMD_LICENSE_FILE: unset

- LM_LICENSE_FILE: unset

- ARM_PRODUCT_DEF: unset

- ARM_PRODUCT_PATH: unset

- ARM_TOOL_VARIANT: unset

解决方案:

将ARM编译器V5安装在【Keil安装路径】\ARM\ARM_Compiler_5.06u7下,比如:我的Keil安装在D:\Keil目录,则编译器安装在D:\Keil\ARM\ARM_Compiler_5.06u7下。

然后在选择编译器V5作为工程的编译器即可。

### 环境变量未设置的影响 当 `LM_LICENSE_FILE`、`ARM_TOOL_VARIANT` 和 `ARM_PRODUCT_PATH` 这些环境变量未被正确配置时,可能会导致 Keil MDK 编译器无法正常工作。具体影响如下: - **LM_LICENSE_FILE 未设置**:该环境变量用于指定浮动静态许可证服务器的位置。如果此变量未设置,则编译过程中可能找不到有效的许可证文件,从而阻止编译过程继续进行[^1]。 - **ARM_TOOL_VARIANT 未设置**:这个变量定义了使用的工具链变体(例如标准版或专业版)。如果没有设定,默认情况下可能是使用不匹配的工具链版本,这可能导致兼容性问题以及错误报告中的未知产品信息[^2]。 - **ARM_PRODUCT_PATH 未设置**:它指定了产品的安装路径。缺少这一项意味着系统不知道去哪里查找必要的库和其他资源文件,进而引发链接失败或其他构建错误[^3]。 ### 解决方案 为了修复这些问题并使开发环境恢复正常运作,可以采取以下措施: #### 设置 LM_LICENSE_FILE 确保已获取合法授权,并按照官方文档指示正确设置了 `LM_LICENSE_FILE` 变量指向许可文件位置或者浮动许可证管理服务地址。对于本地激活的情况,请确认已经成功输入序列号完成激活流程。 #### 配置 ARM_TOOL_VARIANT 根据实际需求选择合适的工具链变体选项,在安装程序界面中做出适当的选择;如果是通过命令行方式启动 IDE ,则可以在启动脚本里显式声明所需的工具链变体。 ```bash set ARM_TOOL_VARIANT=mdk_professional ``` #### 定义 ARM_PRODUCT_PATH 明确指出所用到的所有组件的具体安裝目录,以便于编译器能够顺利找到所需依赖项。可以通过编辑系统的环境变量来实现这一点,也可以在项目属性里面单独为各个工程定制化设置。 另外值得注意的是,有时操作系统更新也可能会影响到现有软件的行为模式,因此建议保持操作系统的稳定性和及时关注厂商发布的补丁说明。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

happydesigner

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值