microchip xc8 compiler(908)退出状态= 1

时间:2016-08-27 15:29:44

标签: compilation xc8

我正在使用随开发板提供的微芯片源代码开发16F1947的dali代码。

由于我的公司,我有专业版的编译器,所以我能够使用PRO模式构建以前的项目,以及构建工具提供的所有优化。

当我从微芯片网站下载dali项目,并尝试使用xc8 [在PRO模式下]编译它时,构建失败并显示错误消息:

/opt/microchip/xc8/v1.10/bin/aspic: signal 11 
:: error: exec failed: /opt/microchip/xc8/v1.10/bin/aspic
Microchip MPLAB XC8 C Compiler (PRO Mode)  V1.10
Copyright (C) 2012 Microchip Technology Inc.
make[2]: Leaving directory `/home/hobo/embed/mplab-x/projects/DALI_CG.X'
make[1]: Leaving directory `/home/hobo/embed/mplab-x/projects/DALI_CG.X'
(908) exit status = 1
make[2]: *** [dist/default/production/DALI_CG.X.production.hex] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 5s)

aspic是他们的汇编程序,而从XC8上的微芯片用户手册,不清楚11指的是什么信号。 进一步的测试显示它与他们的许可证管理器xclm有关,因为如果我尝试在没有任何优化的情况下构建他们的代码,并且在自由模式下,它构建良好。正如我们现在所知道的那样,这会导致膨胀的代码充满不必要的循环,并且来回复制变量。

我做了些蠢事吗?或者我只需要花更多的钱来支付最新版本的编译器。

事先谢谢, WB

1 个答案:

答案 0 :(得分:0)

好的,首先,来自汇编程序的信号11意味着它在输入上被分段(尝试在编译器的PRO版本中进行所有优化)。显然,在免费版本中,它不需要做任何事情,因为显而易见的原因,它不会出现段错误。

我不得不升级到一个版本(xc 1.21)。现在PRO优化工作正常,没有许可问题。

回想起来,这可能是一个愚蠢的问题。

叹息。我道歉。