您的位置 首页 厂商

ARM连接器过错一则

在用RVCT31工作编写ARM程序的时候,出现了一个连接错误:Error:L6915E:Libraryreportserror:scatter-loadfiledeclaresnoh

在用RVCT3.1作业编写ARM程序的时分,呈现了一个衔接过错:Error: L6915E: Library reports error: scatter-load file declares no heap or stack regions and __user_initial_stackheap is not defined.在网上找了一些材料,原因是运用了自定了的scat文件后,编译器没有没有界说Image

ZI

Limit,默许供给的__user_initial_stackheap()函数会用到这个值,此刻有两个解决办法:

1.改写scat文件,界说ZI段,并将*(+ZI)数据放入该段.

2.掩盖体系默许供给 的__user_initial_stackheap()函数,比方能够这样做:

[plain]view plaincopy

print?

  1. /*
  2. *默许供给的__user_initial_stackheap()函数会用到Image
    ZI

    Limit这个值,

  3. *由于在运用Scat时这个值在默许情况下不被界说,所以要掩盖同名的库函数
  4. */
  5. __value_in_regsstruct__initial_stackheap__user_initial_stackheap(unsignedi0,unsignedi1,unsignedi2,unsignedi3)
  6. {
  7. struct__initial_stackheapconfig;
  8. config.heap_base=i1;
  9. config.heap_limit=i1;
  10. config.stack_base=i1;
  11. config.stack_limit=0;
  12. returnconfig;
  13. }

此外,还要加上#include ,衔接的时分加上–keep __user_initial_stackheap不然还会提示该函数没有界说.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/262375.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部