TI中文支持网
TI专业的中文技术问题搜集分享网站

Fatal Error[e72]: Segment LOCK_BITS_ADDRESS_SPACE must be defined in a segment definition option (-Z, -b or -P) ?谢谢!

技术人员、同仁:

       你们好!最近在整zigbee协议栈,从官网上下了代码,编译连接时遇到标题中问题,问题描述进一步如下:

1、问题描述

       Zigbee  协议栈

       软件环境:在IAR8051 9.10版本下;

       程序: Z-Stack Home 1.2.0 文件中程序 “SampleLight.eww”

2、编译通过,连接时提示“Fatal Error[e72]: Segment LOCK_BITS_ADDRESS_SPACE must be defined in a segment definition option (-Z, -b or -P)”,请问这是为什么?编译前什么都没修改和设置! 

Susan Yang:

需要添加预编译宏 

把 MAKE_CRC_SHDW 放到C/C++ Compiler->Preprocessor->Defined Symbols

zhi fang:

回复 Susan Yang:

技术,同仁:

  你们好!

按照你所说的,设置加入后出现如下编译连接提示:

 “MAKE_CRC_SHDW“编译又提示”Fatal Error[e72]: Segment CRC_SHDW must be defined in a segment definition option (-Z, -b or -P)“

OnBoard.c程序中有如下代码行:

#if defined MAKE_CRC_SHDW#pragma location="CRC_SHDW"const CODE uint16 _crcShdw = 0xFFFF;#pragma required=_crcShdw

#elif !defined MT_UBL_FUNC

#pragma location="LOCK_BITS_ADDRESS_SPACE"__no_init uint8 _lockBits[16];#pragma required=_lockBits

”CRC_SHDW“和”LOCK_BITS_ADDRESS_SPACE“应该有值吧?它们的定义可以在哪里找到了?

zhi fang:

回复 Susan Yang:

你好!

试了你所说的方法,编译连接提示”Fatal Error[e72]: Segment CRC_SHDW must be defined in a segment definition option (-Z, -b or -P)“?

OnBoard.c程序中

#if defined MAKE_CRC_SHDW#pragma location="CRC_SHDW"const CODE uint16 _crcShdw = 0xFFFF;#pragma required=_crcShdw

#elif !defined MT_UBL_FUNC

#pragma location="LOCK_BITS_ADDRESS_SPACE"__no_init uint8 _lockBits[16];#pragma required=_lockBits

”CRC_SHDW“和”LOCK_BITS_ADDRESS_SPACE“定义从哪里可以找到?

谢谢

Susan Yang:

回复 zhi fang:

可以参考下这个帖子 https://e2e.ti.com/support/wireless_connectivity/f/158/p/97847/385267 

Leo1:

回复 zhi fang:

在工程配置的linker->config->linker configration file勾选override default,路径改为…zstack\Tools\CC2530DB\cc2530-sb.xcl。我是这么解决的。

赞(0)
未经允许不得转载:TI中文支持网 » Fatal Error[e72]: Segment LOCK_BITS_ADDRESS_SPACE must be defined in a segment definition option (-Z, -b or -P) ?谢谢!
分享到: 更多 (0)