IAR平台进行编译时常见错误:

2023-05-16

1.IAR编辑时出现如下错误:

                        Near constant start address + size must be less than ...

      错误原因是:代码对应的Device 芯片选型错误。

      解决方法:将General Options/ Device 下拉选项选择对应的芯片类型;

           例如:设置为RL->R7F0C->RL78->R7Fxxxxx

            如果没有RL_R7F0C选项则在  IAR Systems / Embedded workspace 7.4/rl78 中添加两个补丁文件

              1.config文件;2.Inc文件

2.IAR中设置输出bin文件,右键工程名->option->output converter->output

  勾选两个选项框 ,在output format选择binary

   设置输出hex文件,有两种方式:

              方式1:同上,只是在output 选项中选择Intel Extended

             方式2:打开IAR工程选项,选中linker->output

3.IAR中工程目录下显示为暗灰色带X号的文件表示此文件不参与次Project的编译,设置方法为在Project某个具体文件上右键->option->exclude from build 即可。

4.IAR 开发工具的工程文件管理思想是这样的:一个workspace里可以包含对个Project,而一个Project又可以存在多种不同的配置,具体参考 help->IDE Project manage and build Guide。

5.在IAR中存储生成的hex及bin文件的目录路径不能有中文字符,否则会报错:

  Error while running ieftool exe -- hex --verboose

6.IAR编译出现 unrecongnized token Error[pe007]......是因为代码中有中文输入模式下输入的字符。

7.IAR编译出现warning [pe223]:funtion "get_offset_alig"declare implicity 是因为没有声明函数原型。

8.IAR中出现 Not a member of the active project.

这个问题的原因是因为:文件备份后文件夹路径改变。

解决方法:IAR具有清除编译器的功能,在workspace中右键工程名->clean 将以前编译过的信息全部清除。然后重新rebuild all。

9.IAR出现warning [pe047]:incompatible redefinination of macro 

是因为有同名的宏但定义不同。

10.IAR中出现Error[Li006]:duplicate define for .....

原因:一个变量在多个文件中被定义,初始化。

解决方式:在引用的.c文件中加extern。

11.IAR中出现Error[Li005]:no definition for....

原因:变量在使用时只是申明了 ,而没有进行定义

解决方式:比如在a.h中定义了一个结构体 struct tan{int a,charb}  然后在a.h中申明 extern struct tan pc 

当在a.c中使用时需要定义struct tan pc    不定义这个就会报错。

12.IAR中出现#error directive:“must spefical device type !!!”

     原因:宏定义判断条件写错

     解决方式:改正写错的宏。

13.IAR中出现 Error [pe159]:declaration is incompation with previous

   (函数的声明与调用,参数类型,参数个数,返回值类型需要一致。)

原因:就是说,你的函数声明写在了调用之后,比如你在51行调用了函数,但是函数的定义在159行,编译器误把你的函数定义当成了函数调用,而把函数调用当做了函数声明。

解决方式:1.在调用函数之前先声明

                  2.将函数定义在调用之前

14.IAR中出现了warning [pe174]:expression has no effect

       说明此句是无效的,对程序无影响。

       1.提示你去掉这句代码,可以使代码效率更高。

       2.编译怀疑你的表达式没有写完,给你提示一下。

15.IAR中出现[pe012]:parsing restart here after previous syntax error :

      出现此问题原因是少了一个大括号。

16.IAR 连接源文件时出现duplicate definitions错误

原因:就是多个文件定义全局变量的时候一个变量的定义间接地出现在了多个地方。
例如,变量flag在文件stm32f4xx_it.h中定义了一次,然后被main.c包含进来,又被定义了一次,所以就出现错误。

解决方法:

首先,要知道的是全局变量的定义要放在.c文件里而不是.h(头文件)中。同时删除头文件中变量的定义。
同时在.h(头文件)中说明变量一下为extern,不然编译的时候会出现未定义错误。(注意:这里说明变量的时候不能再给他赋值,会出错。)

17IAR中出现  .Fatal Error[Li004]: file "F:\IARProject\aboard project\aboard

project920M\Src_BOOT-SWMW470X(4438)\SWMW470X_boot-IAR_7.2\boot7.2\arch

\r5f\fm33a04x\project\SWMW470S\Obj\cstartup.o" is not an object or archive file


原因:找不到这个文件(可能是1.头文件路径不对;2.没有添加这个文件)

解决方式:1修改头文件路径;

                  2添加此文件;

18.iar used for multiple files 问题的解决

出现这个问题的原因是我在 option-->Linker--->output  与   option--->Linker--->extern output里都进行输出设置,且输出的文件名是一样的,解决方案是将其中某一个设置删掉,就可以了。

19.IAR调试时出现The stack plug-in failed to set a breakpoint on "main". 解决方法

IAR调试出现The stack plug-in failed to set a breakpoint on "main". The Stack window will not be able to display stack contents. (You can change this setting in the Tool>Options dialog box.)的警告,程序能烧进去,但不能调试。

 
需要进行如下配置:
 1. iar->options->linker->output->format;    选择 Debug information for c-SPY选项
 2. iar->Tools->options->stack->去掉选项“stack pointer(s) not valid until program reaches”

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IAR平台进行编译时常见错误: 的相关文章

  • 使用百度echarts制作可视化大屏——最终效果和动态数据刷新

    最终效果如下图 xff1a 接下来就是数据动态刷新了 xff0c 这个没什么好说的 xff0c 就是一个 post的事 xff0c 传递一个json给自定义的refresh函数就行了 post url null function d ref
  • 简单记录ESP8266WIFI模块网络调试过程,测试通过。

    本文目的 xff0c 使用WIFI模块连接阿里云飞燕平台 xff0c 调试之前我想先测试一下买回来的WIFI模块是否能正常使用 xff0c 可以通过网络调试助手进行测试 以手机WIFI提供局域网环境 xff0c PC端和WIFI模块连接手机
  • 在vue-element-ui的时候 如果同时使用了animated会出现模态框层级显示错误问题

    同时使用element ui 和animated的时候 模态框的层级会出问题 这个时候需要做动画 最好还是用vue原带的动画组件transition和transition group xff0c 然后自定义动画
  • tensorflow数据清洗

    import tensorflow as tf import numpy as np import random import os import math from matplotlib import pyplot as plt def
  • 利用PHPExcel导出数据,下载excel文件正常,打开报错:'break' not in the 'loop' or 'switch' context

    今天有一个需求 xff0c 是利用phpexcel类导出数组为excel文件并下载 xff0c 我本地用的是phpstudy环境 xff1a php版本7 1 13 下载文件正常 xff0c 但是导出的excel文件里面是报错信息 如下 于
  • 如何利用python开启简单http server服务

    一 背景 有时候搭建一个简易的http服务器可以大大提高工作效率 xff0c 比如局域网内共享文件 xff0c http测速等 下文将介绍一种使用python开启简单http server服务的方法 二 构建步骤 1 将python添加到环
  • alembic教程

    安装 pip install alembic 步骤 1 初始化 alembic 仓库 在终端中 xff0c cd 到你的项目目录中 xff0c 然后执行命令 alembic init alembic xff0c 创建一个名叫 alembic
  • 【MATLAB】多个子图之间colorbar不共享问题解决方法

    在实验时 xff0c 发现subplot后每个子图的colorbar不统一 xff0c 于是一番百度 找到解决方法 xff1a 在绘制每个子图后 xff0c 使用caxis 0 1 命令 xff0c 成功解决 for example spa
  • 手把手教你调整电脑磁盘的分区大小

    教程目录 一 前言二 准备工具三 注意事项四 分区步骤 一 前言 我们电脑在使用过程中会下载很多软件 xff0c 尤其是我们计算机专业 xff0c 那不各种IDE装起来 xff0c 这时候会导致某个盘的空间不足 xff0c 需要给它再分些空
  • VirtualBox快照创建

    1 点击控制 gt 生成备份系统快照 2 添加快照名称和描述 xff0c 方便以后还原 3 等待一会 4 备份完成后可在VirtualBox管理器中看到生成的备份
  • putty连接出现remote side unexpected closed network-connection错误

    putty远程连接Red Hat Enterprise Linux 出现remote side unexpected closed network connection错误 查看日志文件 val log secure span class
  • IDEA 创建Servlet项目

    1 打开IDEA xff0c 点击Create New project创建一个一个新项目 2 点击Java Enterprise xff0c 然后选择Web Application xff0c 点击Next 3 设置项目名 xff0c 项目
  • 数据库接口类和接口实现类

    数据库接口类 xff08 BasicDAO java xff09 xff1a 实现对数据库的直接增删查改的interface接口 span class token keyword import span java span class to
  • Linux安装Anaconda

    Anaconda是一个开源的Python发行版本 xff0c 其包含了conda Python等180多个科学包及其依赖项 一 安装Anaconda 1 下载Anaconda安装包 xff08 我的位置是hadoop的家目录 xff0c 即
  • Windows 安装Maven3.6.1

    Win10 安装Maven3 6 1 xff0c 并为IntelliJ IDEA配置本地maven 一 安装Maven二 配置Maven本地仓库三 为IntelliJ IDEA配置本地maven 一 安装Maven 1 前提安装好jdk 2
  • 使用gorm创建casbin数据库报错

    1 报错 span class token operator span github span class token punctuation span com span class token operator span casbin s
  • Java 操作HBase

    Java 操作HBase 思路 1 建立连接 2 针对表的操作 xff08 创建表 删除表 判断表是否存在 使用 禁用表 列出表 xff09 3 针对数据的操作 xff08 添加 删除 修改 查看 xff09 4 关闭连接 HBase常用的
  • strtok和strtok_s函数使用说明

    看了很多高赞CSDN文章和百度百科 xff0c 越看越晕 xff0c 浪费好多时间 xff0c 特此记录 先介绍strtok xff0c 后边给个strtok s的例子 注意 xff1a 这两个函数必要连续调用多次才能实现分割和输出功能 x
  • chmod修改权限的用法

    一 chmod作用 xff1a 修改文件 目录的权限 二 语法 xff1a chmod 对谁操作 操作符 赋予的权限 文件名 三 操作对象 xff1a u 用户user xff0c 表现文件或目录的所有者 g 用户组group xff0c
  • 一篇文章入门Stm32CubeMX在freertos系统下进行uart串口通讯

    相信大部分人早期入门STM32系列单片机都是从各种例程入手的 xff0c STM32单片机繁多的寄存器已经不允许我们像学51系列单片机一样直接操作寄存器了 xff08 如果你记忆力好 xff0c 或者愿意花很多时间翻芯片手册查看对应寄存器的

随机推荐

  • Note: Python_Matplotlib绘制平滑曲线和散点图

    给出横坐标纵坐标点 xff0c 即可连线绘图 import matplotlib 调用绘图工具包 给出x y点坐标 x y 61 1 2 3 4 5 6 5 9 3 4 7 5 绘图 matplotlib pyplot plot x y 这
  • Word论文中设置正文中的引用参考文献 按住Ctrl键+单击鼠标右键 实现跳转到论文参考文献的对应位置

    Word论文中设置正文中的引用参考文献 按住Ctrl键 43 单击鼠标右键 实现跳转到论文参考文献的对应位置 首先要确保文中参考文献排版是插入的编号 xff0c 而不是自己手敲的 1 2 在正文要引用参考文献的位置 点击上方菜单栏的 插入
  • NVM 安装node.js后没有npm

    我们在使用NVM管理工具安装一个新的node后 xff0c 发现没有npm可以使用 参考文档 是因为在使用NVM安装node的时候不会默认安装npm xff0c 所以需要我们自己下载后放到nvm对应的node目录下面 npm下载地址 xff
  • idea项目设置鼠标右键点击文件夹通过IDEA打开

    每次打开idea项目是每次都要打开idea再手动选择项目 xff0c 直接设置成右键打开会很方便 效果图 xff1a 1 首先 win 43 R 输入regedit 打开注册表 2 打开注册表后找到如下路径 xff1a 计算机 HKEY L
  • Java利用Stream统计List中每个元素的个数

    1 传统HashMap 新建HashMap然后for循环List去统计每个元素出现的次数的方法实现 public static Map lt String Integer gt frequencyOfListElements List it
  • Git操作一直要求输入用户名和密码

    通过如下命令配置 xff1a git config global credential helper store git config global user email git config global user name 配置好后再去
  • Linux下的简单线程池

    问题描述 xff1a 在我们的日常生活中 xff0c 如果我们现在要浏览一个网页或者频繁的打开一个执行时间较短的任务 xff0c 如果每次调用都创建一个线程 xff0c 使用结束后就立即释放 xff0c 那么这样的开销对于操作系统来说有点太
  • 对于MYSQL中左对齐右对齐的实现

    在查询表的时候 xff0c 因为是表格的形式 会想要让其左对齐和右对齐的形式 能够看起来舒服一点 书上写的是ltrim rtrim方法 但是具体实现起来并不是很理想 左对齐很快 一开始表格的显示形式就是左对齐 或者用ltrim 右对齐的话
  • 记录罗技键盘从win切换mac的经历

    罗技蓝牙键盘ALT和WIN键 OPT和CMD键 如何对调 今天一直正常使用的罗技K380蓝牙键盘 不知道怎么抽风了 opt键和cmd键位置对调了 也就是windows环境下alt键和win键对调了 在使用复制粘贴快捷键的时候 特别不方便 而
  • IDEA中@author模板的设置

    在设置中查找Editor中的File and Code Templates 具体如下图所示 Created by IntelliJ IDEA 64 Author USER 64 create DATE TIME
  • 解决Win10搜索框没有反应

    刚发现电脑搜索突然不好使 xff0c 这个办法一下就解决了 在状态栏左下角的搜索框搜索OneNote没有任何反应 xff0c 对 xff0c 就是这个地方 最后在另一篇博客上找到了答案 xff0c 那篇博客也是在知乎找到的答案 xff0c
  • mac终端走代理

    mac终端走代理 mac即使打开了代理可以正常上网 xff0c 但终端默认不走代理 xff0c 需要手动配置终端代理 mac终端走代理的方法 span class token operator span 方法一 xff1a xff08 推荐
  • 从数据集CLEVR来看视觉推理的发展

    一 视觉推理的发展 视觉推理 Visual Reasoning 概念的兴起是在Li Fei Fei组提出的 CLEVR 数据集后 xff0c 被大家广泛认识并且越来越多的人开始研究 xff0c 大家提出的各种模型都是为了让机器或者是神经网络
  • Xmanager安装与使用攻略

    文章目录 前言一 工具二 步骤 前言 Xmanager 是一款可以在自己的办公电脑Windows机器下 xff0c 用于远程连接控制服务器Linux UNIX的管理工具 本经验介绍如何在windows上安装xmanager 一 工具 XMa
  • tensorflow的tensor张量如何转化为numpy数组?

    比方说 xff0c a是一个已经定义好的tensor张量 那么直接 xff1a a numpy 即可
  • vnc登录不上解决办法

    备忘 xff01 环境介绍 xff1a ubantu16 04 xff0c 安装了anaconda xff0c QT xff0c cmake xff0c 乱七八糟一堆东西 环境变量也改了很多 xff0c 不知为何会影响vnc桌面的启动 解决
  • js删除数组中的指定对象

    文章目录 实现效果封装工具函数完整demo 实现效果 封装工具函数 思路就是 xff0c 遍历取到每个对象和对应下标 xff0c 通过自定义的函数判断该对象是否删除 xff0c span class token comment 删除数组中指
  • 用OpenCV储存视频时遇到的问题

    用 MJPG 格式储存 34 avi 34 格式时报错 cv2 error OpenCV 3 4 1 io opencv modules videoio src container avi cpp 737 error 215 pos lt
  • debian 10执行提示service: command not found(找不到service命令)解决方法

    debian 10 用 root 执行提示 bash service command not found xff08 找不到 service 命令 xff09 解决方法 问题 想要执行 service xff0c 发现找不到命令 xff0c
  • IAR平台进行编译时常见错误:

    1 IAR编辑时出现如下错误 xff1a Near constant start address 43 size must be less than 错误原因是 xff1a 代码对应的Device 芯片选型错误 解决方法 xff1a 将Ge