This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

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

Other Parts Discussed in Thread: Z-STACK

技术人员、同仁:

       你们好!最近在整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)”,请问这是为什么?编译前什么都没修改和设置! 

  • 需要添加预编译宏 

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

  • 技术,同仁:

      你们好!

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

     “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“应该有值吧?它们的定义可以在哪里找到了?

  • 你好!

    试了你所说的方法,编译连接提示”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“定义从哪里可以找到?

    谢谢

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

  • IAR版本太新了,你看下协议栈安装目录下的Release Note,里面有IAR的版本需求,你换一个

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

x 出现错误。请重试或与管理员联系。