Error: L6406E: No space in execution regions with .ANY selector matching xxx.o(.xxx).

这篇具有很好参考价值的文章主要介绍了Error: L6406E: No space in execution regions with .ANY selector matching xxx.o(.xxx).。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

我在使用STM32F4的FreeRTOS做项目实验过程中遇到报错:提示内存大小不足以存储当前代码,简单的说就是:芯片的存储空间不够


一、错误分析

linking…
…\OBJ\LED.axf: Error: L6406E: No space in execution regions with .ANY selector matching heap_4.o(.bss).
…\OBJ\LED.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(.bss).
…\OBJ\LED.axf: Error: L6406E: No space in execution regions with .ANY selector matching malloc.o(.bss).

。。。。。。

…\OBJ\LED.axf: Error: L6406E: No space in execution regions with .ANY selector matching spi.o(.data).
…\OBJ\LED.axf: Error: L6407E: Sections of aggregate size 0x12554 bytes could not fit into .ANY selector(s).
Not enough information to list image symbols.
Not enough information to list load addresses in the image map.
Finished: 2 information, 0 warning and 31 error messages.
“…\OBJ\LED.axf” - 31 Error(s), 3 Warning(s).
Target not created.
Build Time Elapsed: 00:00:17

错误原因:我是用到了 malloc 内存管理,申请了大量空间,但我再把想要的程序都移植到这个工程中,就显示报错。

二、解决方法

找到 malloc.h 文件,将最大管理内存先改小,然后再改大选择合适的。比如我这里先改成20K,也就是(20*1024)就能正常运行,然后我有改成了40K就有报错,说明最大管理内存不能超过40K,否则就报错;其次改成了35K就能正常运行了。
..\obj\led.axf: error: l6406e: no space in execution regions with .any selec,STM32,单片机,stm32,嵌入式硬件
最大管理内存改为 35K,根据自己code的情况来决定
..\obj\led.axf: error: l6406e: no space in execution regions with .any selec,STM32,单片机,stm32,嵌入式硬件
最后就解决错误了!

三、其它报错原因

将大容量的芯片程序移到小芯片容量程序可能也会报错,比如原程序是在STM32F103VET6这种大容量芯片移植到STM32F103RBT6这块中等容量的芯片:

STM32F103VET6:FLASH size 512kb RAM : 64Kb
STM32F103RBT6:FLASH size 128Kb RAM : 20Kb
这里很明显存储大小都不一样,也可能会报错

当然还有其它的错误原因,遇到问题先看是什么原因导致报错的再进行度娘解决。文章来源地址https://www.toymoban.com/news/detail-730739.html

到了这里,关于Error: L6406E: No space in execution regions with .ANY selector matching xxx.o(.xxx).的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Cause: error=86, Bad CPU type in executable

    Mac Android Studio 运行项目 报错 Cause: error=86, Bad CPU type in executable 原因 ADB 不支持 ARM。应该是苹果系统更新了某些东西 导致不支持 解决方案 终端输入 softwareupdate --install-rosetta 出现 I have read and agree to the terms of the software license agreement. A list of Apple SLAs may be found here: http://www.app

    2024年02月04日
    浏览(52)
  • Git命令:撤销本地commit,解决remote: error: hook declined to update;解决Error: ENOSPC: no space left on device

    1、使用 git log 查询提交记录 2、使用 git reset commitId 回退到你想要的版本 ( ps:commitId 就是 git log 里面显示的一长串字符,每次提交记录都有,你想要回退到哪个提交节点,就使用哪个 commitId ) 其中两种方式不清除本地提交和清除本地提交的方法 1、回退到上次提交并清除本

    2024年01月18日
    浏览(65)
  • MySQL报错解决:Error writing file ‘/tmp/XXXX‘ (Errcode: 28 - No space left on device)

    执行sql报错如下: MySQL报错 “Error writing file ‘/tmp/XXXX‘ (Errcode: 28 - No space left on device)” 表明在写入文件时,临时目录(tmpdir) 的设备上没有足够的可用空间 ,可能会导致MySQL无法执行某些操作,如排序或临时表的创建 在MySQL 8中,默认的临时目录(tmpdir)路径取决于操作系

    2024年02月11日
    浏览(40)
  • error: #268: declaration may not appear after executable statement in block问题解决方法

    在stm32f407编程中遇到了error: #268: declaration may not appear after executable statement in block,编写代码如下: 报错情况: 问题分析: 在c89(1989年)标准中规定了c文件中局部变量的定义只能放在所有执行语句前,放在开头处;c99(1999年)标准中c文件中局部变量的定义可以放在任何地方

    2024年02月13日
    浏览(43)
  • pip安装ERROR: Could not install packages due to an OSError: [Errno 28] No space left on device解决方案

      大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。   本文主要介

    2024年02月16日
    浏览(53)
  • RuntimeError: CUDA error: no kernel image is available for execution on the device

    导致的原因一般都是显卡算力和cuda或者torch版本不匹配 比如在conda中安装的pytorch=1.5.0 cuda=10.2 错误:RuntimeError: CUDA error: no kernel image is available for execution on the device 参考pytorch 报错 RuntimeError: CUDA error: no kernel image is available for execution on the device_可豌豆的博客-CSDN博客 则应该安装

    2024年02月15日
    浏览(58)
  • 解决RuntimeError: CUDA error: no kernel image is available for execution on the deviceCUDA

    解决RuntimeError: CUDA error: no kernel image is available for execution on the deviceCUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect. 在服务器复现代码的时候,遇到了上述错误,解决办法如下。 .bashrc文件在服务器上初始页面的配置文件的地方 参考:

    2024年02月16日
    浏览(49)
  • 【Error】DeprecationWarning: executable_path has been deprecated, please pass in a Service object

    解决warning: DeprecationWarning: executable_path has been deprecated, please pass in a Service object driver = webdriver.Edge(\\\'C:/Users/cong/AppData/Local/Programs/Python/Python310/msedgedriver.exe\\\',options=option) 这个警告信息是在使用Python的Selenium库时出现的。它提示说“executable_path”已经被弃用了,建议使用一个Serv

    2024年02月06日
    浏览(42)
  • [已解决]RuntimeError: CUDA error: no kernel image is available for execution on the device

    在ubuntu服务器上用python炼丹的时候遇到的两个问题,一个warning和一个runtimeErro,我的环境是用conda配置的,我就切换了一下环境,然后切回来就报这两个错误,期间啥也没干,之前重新安装opencv疯狂报错也是这种样子的。 warning warning:NVIDIA GeForce RTX 3090 with CUDA capability sm_86

    2024年02月02日
    浏览(68)
  • configure: error: C++ compiler cannot create executables/checking for arm-linux-gnueabihf-strip.. no

    在linux虚拟机中用 ./configure xxxxxx交叉编译触摸源码(tslib-1.4.tar.gz)的时候遇到无法编译出Makefile并且报错configure: error: C++ compiler cannot create executables以及 checking for arm-linux-gnueabihf-strip... no的 问题 完整报错信息 关键是这句问题checking for arm-linux-gnueabihf-strip... no 说明系统找不到

    2024年02月03日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包