ICCAVR 7.22 编译出现Cannot include source file “XX.X“ file not found的终极解决方法

2023-11-04

    经常出现如下现象:之前编译好的工程项目,拷贝到其它盘或者其它文件夹或者将最外层文件夹重命名再编译,就会出现Cannot include source file “XX.X“ file not found的错误信息,如何彻底解决呢?本文给出了终极解决方案。

解决方法是:

     (一)、系统.h文件用绝对路径,即#include <XXXX.h>

                  例如:

#include <iom128v.h>      //ICC AVR
#include <macros.h>       //ICC AVR
#include <math.h>
#include <stdlib.h>
#include <string.h>

     (二)、用户.h文件用相对路径,即#include "XXXX.h"

                  例如:

#include "USART0.H"
#include "USART1.H"
#include "DI.h"
#include "DO.h"

     (三)、Options...->Project  勾选Relative Paths

     (四)、Options...->Paths--->Add添加相对路径

      (1)、一级文件夹中的用户.h文件的相对路径

 

 

 

  D:\ICCAVR\ADS8320 下面有一个 ADS8320.h文件。

  在Options...->Paths--->Add添加相对路径如下:     

../ADS8320;

(2)、二级文件夹中的用户.h文件的相对路径

 

 

  D:\ICCAVR\MSCOMM 下面有两个文件夹(CRC16和MODBUS),在CRC16文件夹下有一个CRC16.h文件,在MODBUS文件夹下有一个MODBUS_SLAVE.h文件。

           在Options...->Paths--->Add添加相对路径如下:     

../MSCOMM/MODBUS;

../MSCOMM/CRC16;

​​​​​​​

下面演示如果不按照上述方法创建的工程拷贝到其它盘或者其它文件夹会出现什么异常。

一、桌面上创建的工程项目,在桌面上编译OK

桌面创建了一个ICCAVR工程项目,存放在ICCAVR文件夹下,如下图所示。

(1)、BSP文件夹下有2个文件:USART1.C和USART1.H

(2)、MODBUS文件夹下有4个文件:CRC16.C和CRC16.H,MODBUS_SLAVE.C和MODBUS_SLAVE.H。

(3)、ICCAVR7.22中添加platform.h头文件的路径: ICCAVR.

路径全称为:C:\Users\liqin\Desktop\ICCAVR

(4)、ICCAVR7.22中添加USART1.H头文件的路径: BSP。

    路径全称为:C:\Users\liqin\Desktop\ICCAVR\BSP

 (5)、ICCAVR7.22中添加CRC16.H头文件和MODBUS_SLAVE.H头文件的路径:MODBUS。

    路径全称为:C:\Users\liqin\Desktop\ICCAVR\MODBUS

(6)、编译工程项目,编译OK。

     桌面上的创建的工程项目,在桌面上编译OK。

二、桌面上创建的工程项目,拷贝到D盘根目录下编译,编译错误

    错误信息为:Cannot include source file "XX.X" file not found

三、错误原因

    在Options...->Paths--->Add中增加的头文件的路径为绝对路径,分别为:C:\Users\liqin\Desktop\ICCAVR、C:\Users\liqin\Desktop\ICCAVR\BSP和C:\Users\liqin\Desktop\ICCAVR\MODBUS,必须将绝对路径修改为相对路径。

   (1)、C:\Users\liqin\Desktop\ICCAVR对应的相对路径为  ..

   (2)、C:\Users\liqin\Desktop\ICCAVR\BSP对应的相对路径为  ../BSP

   (3)、C:\Users\liqin\Desktop\ICCAVR\MODBUS对应的相对路径为  ../MODBUS

四、解决过程

    1、Options...->Project  选中Relative Paths

 2、Options...->Paths--->Add增加platform.h头文件的路径:C:\Users\liqin\Desktop\ICCAVR的相对路径  ..

 3、Options...->Paths--->Add增加USART1.h头文件的路径:C:\Users\liqin\Desktop\ICCAVR\BSP的相对路径  ../BSP

  4、Options...->Paths--->Add增加CRC16.h头文件和MODBUS_SLAVE.H头文件的路径:C:\Users\liqin\Desktop\ICCAVR\MODBUS的相对路径  ../MODBUS

5、再次编译,一切编译OK

 6、从D盘根目录拷贝到C盘根目录,再次编译,一切编译OK

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

ICCAVR 7.22 编译出现Cannot include source file “XX.X“ file not found的终极解决方法 的相关文章

  • “-ftrapv”和“-fwrapv”:哪个效率更高?

    来自 GNU 网站 ftrapv 此选项针对加法 减法 乘法运算的有符号溢出生成陷阱 fwrapv 此选项指示编译器假设加法 减法和乘法的有符号算术溢出使用二进制补码表示进行回绕 该标志启用一些优化并禁用其他优化 https gcc gnu
  • 如何从点文件内向 gnuplot 中的每个点添加颜色

    Reading this https stackoverflow com questions 12427704 vary point color based on column value for multiple data blocks
  • GNU 制作一种双冒号

    我在理解以下 gmake 语法时遇到了一些问题 OBJ foo o bar o OBJ o cpp CC c MMD MP INCLUDES CFLAGS lt o sed create empty targets in file 我不确定
  • grep 是如何工作的?

    我想了解如何grep works 当我说grep hello does grep获取 2 个参数 1 要搜索的字符串 即 hello 和 2 路径 或者shell是否转换 变成某事grep可以理解 哪里可以得到源代码grep 我遇到了这个G
  • 内置函数clock()在atmel studio 7.0中不起作用

    我正在开发一个秒表项目 我需要读取程序运行时已经过去的时间 并从中构建我的时间基准 我已经包括了time h库 甚至将 h 文件放在我的项目目录中 但由于某种原因 一旦我使用clock 我的代码无法在此项目或我的任何 atmel 7 项目上
  • GNU Smalltalk 80 调试器。如何调试smallcode代码?启动调试器?

    在 GNU Smalltalk 80 中 可以用您自己的普通代码编写 Smalltalk 代码 个人选择的文本编辑器 因此 调试代码非常重要 首先 将文件另存为 txt 文件 然后 您可以使用 工具 从程序员文本编辑器中打开该文件 这里的工
  • HTML5 Websockets 可以在不使用服务器的情况下直接连接 2 个客户端(浏览器)吗? (P2P)[重复]

    这个问题在这里已经有答案了 使用 HTML5 Websockets 我可以直接在 2 个客户端 浏览器 之间打开套接字 假设我知道它们的 IP 地址并且不存在 NAT 遍历问题 我想将一些数据直接从一个浏览器发送到另一个浏览器 本质上是创建
  • GNU 日期和自定义格式

    我有一些特定日期格式的字符串 我想使用 GNU date 命令 coreutils 8 20 来处理它们 我可以使用 FORMAT 字符串获取要输出的日期 但不能理解使用相同字符串输入的字符串 我很确定我错过了一些明显的东西 是什么赋予了
  • WCF 是否支持点对点实现?

    我正在尝试在 LAN 内实现点对点消息传递和文件共享实用程序 那么 WCF 支持 p2p 吗 有人尝试过通过 WCF 进行文件共享吗 是的 它确实 请参见如何在对等网络中设计状态共享 http msdn microsoft com en u
  • 对于 Makefile 变量的每个目标

    我的 makefile 如下所示 apps app1 app2 app3 all dir app1 app2 app3 zip cleanup 现在我想在列表上做一些循环apps多变的 就像是 loop on apps endloop 是否
  • 具有 3 个用户连接的 WebRTC

    我现在正在实施源代码WebRTC 示例 https github com webrtc samples tree gh pages src content peerconnection audio通过使用网状拓扑成为 3 个用户连接 但是
  • 让 GNU C 编译器在 iOS 6.x 上运行

    我有一台越狱 evasi0n 第四代 iPad 带有 iOS 6 1 固件 通过 Cydia 我安装了移动终端 版本 520 2 然后 遵循this http iklive org cc compiling on ios 教程中 我已经下载
  • 在Linux下,C++源代码如何成为可执行文件或静态/动态库。以及程序运行时如何加载到内存中

    我知道源代码可以编译并链接到共享 静态库或 ELF 可执行文件 当程序运行时 它会加载到内存中并根据ELF格式创建一个进程映像 但我不确定程序如何加载共享库 链接器如何在外部库中查找符号以及 a 存档如何工作 如果程序在 64 位操作系统上
  • 为什么我在使用 WifiP2pManager 时总是显示 BUSY?

    我正在尝试使用 Wi Fi Direct 连接两个 Android 设备 在我的 HTC 手机 One SV 上它似乎可以工作 但在我的第二台设备 LG Optimus 4xhd 上它不起作用 在我的 onResume 函数中 我启动以下线
  • 是否可以通过互联网在两个移动设备 (iPhone) 之间连接套接字?

    是否可以通过互联网在两个移动设备 iPhone 之间连接套接字 我正在尝试发现每个设备的IP并直接连接 我知道可以使用 Bonjour 来完成 但这只适用于本地网络 我需要通过互联网在两个设备之间建立高速连接 Thanks 如果你有两个 I
  • 比特币客户端如何确定第一个连接的IP地址?

    据我所知 比特币是一种 p2p 协议P2P协议必须有一个专用的中央服务器 https stackoverflow com questions 310607 peer to peer methods of finding peers 但据说比
  • Gnu 时间和格式化输出

    我想使用 gnu time 来测量一些小 c 程序的运行时间 人 中写道 f FORMAT format FORMAT Use FORMAT as the format string that controls the output of
  • 在多台机器上并行运行脚本

    我有兴趣知道在多台机器的后台尽快启动脚本的最佳方法 目前 我正在这样做 为每个 IP 地址运行 ssh user ip t perl setup pl gt log 但这需要时间 因为它会逐一尝试通过 SSH 连接到每个计算机 以在该计算机
  • Makefile 和通配符

    好吧 这是我当前的 makefile 设置 有一些文件名为public01 c public02 c等等 我正在尝试使用以下方法为每个人制作目标文件public o带有通配符的标签 public o public c hashtable h
  • 智能手机可以通过 3G/4G 进行点对点通信吗?

    我正在尝试编写一个应用程序 将数据从一个 Android 设备传输到另一个 Android 设备 但这些设备很可能位于城市 州或国家的不同部分 直接的方法是拥有一台中央服务器 或任何类型的服务器 但我试图避免使用中央服务器 我试图传递的数据

随机推荐

  • 自动化工具后起之秀Ansible的部署实践

    转载本文需注明出处 微信公众号EAWorld 违者必究 从早期手动加脚本的部署方式 到后来自动化工具 chef puppet saltstack ansible等 的出现 再到如今DevOps的盛行 企业应用部署正式进入平台部署阶段 CD
  • 程序版本号的制定方法

    前言 最近正好在为部门开发工作用的相关插件 但之前并未接触过软件工程这类系统知识 开发过程中对软件不同阶段的分界和命名一直不明确 所以查阅了一些资料整理了一下 供自己和其他有需要的朋友日后参考 正文 我们常见的版本号命名规则为 name X
  • C语言课设-药品管理系统(含代码)

    用到的知识点 文件操作 fopen fclose fprintf fscanf fread fwirte函数等 链表操作 头插法 尾插法 增删节点 window h里system color XX 用来美化黑框框 函数原型 int syst
  • 【Linux学习笔记】基础命令3

    1 find命令 2 which命令 3 alias命令 4 whereis命令 5 grep命令 6 zip和unzip 6 1 zip命令 6 2 unzip命令 7 tar命令 8 命令行解释器 1 find命令 用法 find 路径
  • 百度官宣在前,阿里、京东在后,互联网大厂向ChatGPT而生?

    ChatGPT蹿红后 互联网科技公司都坐不住了 最早 百度正式对外官宣类ChatGPT项目 文心一言 ERNIE Bot 据笔者了解 该产品将于三月份完成内测 面向公众开放 紧随其后 阿里巴巴公布阿里版聊天机器人ChatGPT正在内测阶段
  • [Go版]算法通关村第二关白银——两两交换链表中的节点问题解析

    目录 题目 两两交换链表中的节点 解决方法 思路分析 Go代码 画图说明 题目 两两交换链表中的节点 题目链接 LeetCode 24 两两交换链表中的节点 解决方法 源码地址 GitHub golang版本 思路分析 让虚拟头结点指向链表
  • Code For Better 谷歌开发者之声 ——Tensorflow与深度学习

    给大家推荐一款丧心病狂的API测试工具 Apifox Apifox 是接口管理 开发 测试全流程集成工具 定位 Postman Swagger Mock JMeter 点击此处跳转体验 目录 一 TensorFlow简介 二 机器学习与深度
  • 米家接入HomeKit系列一:接入基本原理与开篇

    系列文章 米家接入HomeKit系列一 接入基本原理与开篇 米家接入HomeKit系列二 通过群辉NAS的Docker搭建HomeAssistant 米家接入HomeKit系列三 HomeAssistant接入米家网关 米家接入HomeKi
  • 在Android模拟器上安装Google Play

    问题 我想在模拟器上安装Google Play 问题是网上没有指南可以准确地告诉我该怎么做 我不知道为什么 似乎他们使用的是旧版Android Market 3版之前的版本 或者至少有人展示了一些截图 但我无法使其在家里使用 所不同的是 我
  • Apriori

    Apriori 从大规模数据集中寻找物品间的隐含关系被称作关联分析 association analysis 或者关联规则学习 association rule learning 那么什么是关联分析呢 关联分析是一种在大规模数据集中寻找有趣
  • 星星之火-54:量子通信前序,什么是传统的纵观世界的“电”通信?

    目录 1 物质的组成 2 声波信号 声 3 光信号 光 4 电信号 电 5 电磁波信号 磁 6 光电效应 1 物质的组成 1 组成关系 2 分子 分子是由组成的原子按照一定的键合顺序和空间排列而结合在一起的整体 这种键合顺序和空间排列关系称
  • 使用Markdown编写矩阵公式

    直接上代码 我是在有道云上用的markdown math left begin matrix x y z w end matrix right left begin matrix w z y x z w x y y x w z x y z
  • Vue实现二维码,让你的数据轻松传递

    前言 在我们生活中 二维码的应用越来越广泛 特别是在移动互联网的时代 二维码成为了快速传达信息的一种利器 在这篇文章中 我们将会介绍如何在Vue框架下 实现一个具备扫描和查看数据的二维码 在这一篇文章中 我们将会使用到以下两个库 qrcod
  • 看完这篇 教你玩转渗透测试靶机Vulnhub——DriftingBlues-3

    Vulnhub靶机DriftingBlues 3渗透测试详解 Vulnhub靶机介绍 Vulnhub靶机下载 Vulnhub靶机漏洞详解 信息收集 反弹shell ssh私钥登入 命令劫持提权 Vulnhub靶机渗透总结 Vulnhub靶机
  • H3C S5500-52C-EI SSH 服务器发送了断开连接数据包

    错误提示 服务器发送了断开连接数据包 The connection is closed by SSH Server code 2 处理操作 1 确认设备版本 2 生成本地RSA密钥对 3 使能SSH服务器功能 SW47 ssh server
  • 5. react 组件拆分 和 组件传值

    1 将 todoList 进行拆分 创建 编写TodoList js import React Component Fragment from react import TodoItem from TodoItem class TodoLi
  • JAVA Web项目开发SSM框架搭建(第一天)

    所属专栏 Java Web项目构建过程 作 者 我是夜阑的狗 个人简介 一个正在努力学技术的码仔 专注基础和实战分享 欢迎咨询 欢迎大家 这里是CSDN 我总结知识的地方 喜欢的话请三连 有问题请私信 您的点赞 关注 收藏 评论 是对我最大
  • YOLO物体检测-系列教程7:YOLOV3源码解读5之 Darknet

    7 Darknet 7 1 配置文件 配置文件 项目位置 PyTorch YOLOv3 config yolov3 cfg 部分参数展示 batch 16 subdivisions 1 width 416 convolutional bat
  • PHPCMS \phpcms\modules\member\index.php 用户登陆SQL注入漏洞分析

    catalog 漏洞描述 漏洞触发条件 漏洞影响范围 漏洞代码分析 防御方法 攻防思考 漏洞描述 漏洞触发条件 0x1 POC http localhost phpcms v9 index php m member c index a lo
  • ICCAVR 7.22 编译出现Cannot include source file “XX.X“ file not found的终极解决方法

    经常出现如下现象 之前编译好的工程项目 拷贝到其它盘或者其它文件夹或者将最外层文件夹重命名再编译 就会出现Cannot include source file XX X file not found的错误信息 如何彻底解决呢 本文给出了终极