使用 scons 构建时无法使用 IAR arm 编译器进行编译...许可证检查失败

Unable to compile with IAR arm compiler when building with scons ... License check failed

我可以指向 iccarm 编译器,但收到以下错误:

Fatal error[LMS001]: License check failed. Use the IAR License Manager

我有

  1. 包含外部 os 路径

    "env = Environment(platform='cygwin',ENV={'PATH': os.environ['PATH']})"

  2. 还在 CPPPATH 中专门包含了编译器的路径。

  3. 也尝试过使用 ARM 编译器的评估版

谁能告诉我缺少什么 link?

包括或更好:传播,PATH 变量可能还不够。有问题的编译器显然使用额外的环境变量来查找其许可证文件......假设您确实拥有许可证并且编译在标准 shell.

中工作正常

尝试包括整个 shell 环境:

import os
env = Environment(ENV = os.environ)

看看这是否能让事情正常进行。 如果没有,请 post 您当前的 SConstruct。

关于您对 2. 的评论,CPPPATH 变量用于应该扫描头文件的路径(通过#include 语句的隐式依赖)...所以它应该与您的问题没有任何关系。无论如何,请查看用户指南 ( http://www.scons.org/doc/production/HTML/scons-user.html ) 和手册页以正确使用这些简单结构。

我已经通过设置解决了这个问题:

env['ENV']['SYSTEMDRIVE'] = ['C:']

相当于:

export SYSTEMDRIVE=C: