0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

编译时出现错误提示的解决方案

电子设计 来源:电子设计 作者:电子设计 2021-11-10 09:36 次阅读

作者:TI FAE – Johnson Chen

在开发Bootloader 的项目时,我们通常需要把APP程序的入口固定在某个固定地址上,因此在CMD 里面会用如下分配来实现这个功能,

APP
{
-l rts2800_fpu32.lib(.text)
} > FLASHH PAGE = 0

但当我们更换编译器或者CCS 版本时,经常会碰到编译时出现如下 warning:

no matching section
-l rts2800_fpu32.lib(.text)

如果这个警告不想办法消除的话,在通过Bootloader 烧录APP 以后,APP 将无法运行。

这个原因在于C2000 编译器从 CGT V16.9.0.LTS开始 rst2800_ml.lib 和rst2800_fpu32.lib 里面boot.asm相关文件名有改动。

在版本号大于等于V16.9.0.LTS的编译器版本中文件名为boot28.asm,而小于V16.9.0.LTS的编译器版本中文件名为boot.asm

详细如图一图二所示。

因此在CMD里面分配bootxx.obj的时候要根据编译器版本来处理。大于等于V16.9.0.LTS版本中文件名为boot28.obj, 而小于V16.9.0.LTS的版本中文件名为boot.obj.

pYYBAGGKTZ6AKM9cAAD7PrsjnR8715.png  poYBAGGKTaGAGyvPAAD4vjJp-r4851.png

图一 大于等于V16.9.0.LTS 图二 小于V16.9.0.LTS

解决办法为, 使用编译器版大于等于V16.9.0.LTS的时候,将boot.obj改为boot28.obj即可,例如改成如下:

APP
{
-l rts2800_fpu32.lib(.text)
} > FLASHH PAGE = 0

随着编译器版本的升级,未来有可能boot28.obj名字还会修改,碰到同样的问题时可以在你编译完生成的MAP文件里面找到.text段内容里面的内容--rts2800_fpu32.lib:bootXXX.obj (.text)。

pYYBAGGKTaSANhMVAAHTIj4LJOQ237.png

把上面找到的bootXXX.obj代入下面即可:

APP
{
-l rts2800_fpu32.lib(.text) //
} > FLASHH PAGE = 0

注意:

如果是使用定点芯片时,编译器库文件名将是rst2800_ml.lib,此方法同样适用。CMD 写法如下:

APP
{
-l rst2800_ml.lib(.text) //
} > FLASHH PAGE =

审核编辑:符乾江

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5085

    文章

    19138

    浏览量

    305700
  • 编译
    +关注

    关注

    0

    文章

    659

    浏览量

    32890
收藏 人收藏

    评论

    相关推荐

    常见电位测量错误解决方案

    常见电位测量错误解决方案 1. 接触不良 错误描述: 在电位测量中,接触不良是最常见的问题之一。这可能是由于探针接触不良、氧化层、污垢或腐蚀造成的。 解决方案: 清洁探针和被测点,确
    的头像 发表于 12-28 14:08 115次阅读

    SSM开发中的常见问题及解决方案

    : 配置文件存在错误,如语法错误、路径错误或格式错误,导致软件系统无法正常运行。 解决方案 : 仔细检查配置文件的语法、路径和格式,确保其
    的头像 发表于 12-17 09:16 378次阅读

    EEPROM编程常见错误解决方案

    EEPROM(电可擦可编程只读存储器)在编程过程中可能会遇到多种错误。以下是一些常见的EEPROM编程错误及其解决方案: 常见错误 数据写入错误
    的头像 发表于 12-16 17:08 762次阅读

    常见的GND连接错误解决方案

    PCB设计中,如果GND网络没有正确连接,系统会提示“GND网络未连接”的错误。这可能是由于设计疏忽、布线错误或软件设置问题导致的。 解决方案 : 检查布线 :使用专业的PCB设计软件
    的头像 发表于 11-29 16:02 1385次阅读

    SQL错误代码及解决方案

    在SQL数据库开发和管理中,常见的错误代码及其解决方案可以归纳如下: 一、语法错误(Syntax Errors) 错误代码 :无特定代码,但通常会在
    的头像 发表于 11-19 10:21 1913次阅读

    aes加密的常见错误解决方案

    的归纳以及相应的解决方案: 常见错误 编码问题 : 在将字节数组转换成字符串时,如果使用了不同的编码格式,可能会导致解密后的数据出现乱码。 密钥长度问题 : AES算法支持128位、192位和256位三种密钥长度。如果加密和解密
    的头像 发表于 11-14 15:13 1506次阅读

    socket 常见错误解决方案

    在网络编程中,使用套接字(socket)是进行网络通信的基础。然而,在实际应用中,开发者可能会遇到各种错误。以下是一些常见的套接字错误及其解决方案: 1. 连接超时(ETIMEDOUT) 错误
    的头像 发表于 11-12 14:15 2004次阅读

    SUMIF函数常见错误解决方案

    求和范围,导致函数无法正确执行。 解决方案: 确保条件范围和求和范围正确无误。SUMIF函数的基本语法是: SUMIF(条件范围, 条件, [求和范围]) 条件范围 :这是包含您要应用条件的单元格区域。 条件 :这是您希望条件范围中的单元格满足的条件。 求和范围
    的头像 发表于 11-11 09:10 1450次阅读

    ESP32工程编译提示错误,请问该怎么解决?

    刚开始用,编译Hello world 时,idf.py set-target esp32, 出现下述错误,但 idf.py set-target esp32s2,则正常编译,请问该怎么
    发表于 06-21 06:32

    在不同的电脑上启动同一套代码时,出现编译路径错误提示怎么解决?

    :UsersxxxxDocumentsNewDesktopxxxxxxxxxxxxxxxESP32-C3xxxxxxxxxxxxxxxbuildcompile_commands.json”的错误。 有没有办法使同一套代码可以直接在不同的电脑上打开并编译,这样的问题对异地的
    发表于 06-11 06:54

    **Error! Class \'rom\' [group ] starting 8080 has exceeded limit,编译出现这个错误是什么意思?

    **Error! Class \'rom\' [group ] starting 8080 has exceeded limit of BFFF by 7!请教各位老师,编译出现这个错误提示是什么意思,谢谢
    发表于 05-17 06:14

    Vivado编译常见错误与关键警告梳理与解析

    Xilinx Vivado开发环境编译HDL时,对时钟信号设置了编译规则,如果时钟由于硬件设计原因分配到了普通IO上,而非_SRCC或者_MRCC专用时钟管脚上时,编译器就会提示
    的头像 发表于 04-15 11:38 5602次阅读

    求助,为什么STM32CUBEIDE中的GCC编译器不提示if语句中的错误信息?

    STM32cubeIDE中的GCC编译器,在如下语句,因为输错了,但GCC没有提示错误信息,只提示了一个警告信息,如何设置能提示? uint
    发表于 04-07 08:47

    OpenHarmony 移植:build lite 编译构建过程

    配置完毕产品解决方案、芯片开发板解决方案,就可以执行 hb build 进行编译。但是产品解决方案代码是如何被调用编译的? 芯片开发板
    的头像 发表于 02-19 16:19 973次阅读

    PDF输出时出现错误提醒的解决方案

    通过Output Job或Smart PDF创建PDF后,Adobe Acrobat Reader在打开文件时会出现以下错误消息:“An error exists on this page.
    的头像 发表于 01-12 09:50 1739次阅读
    PDF输出时<b class='flag-5'>出现</b><b class='flag-5'>错误</b>提醒的<b class='flag-5'>解决方案</b>