【问题标题】:Use external header files in MPLAB X IDE在 MPLAB X IDE 中使用外部头文件
【发布时间】:2012-05-20 14:33:37
【问题描述】:

我有一个包含一些 .h 和 .c 文件的文件夹,我想在我的项目中使用头文件。

我已经使用“添加现有项目”将它们包含在我的项目的“头文件”文件夹中,但是当我尝试“#include”它们时,编译器(mplabc18\v3.41)说“无法找到文件 xyz.h”

那么,我应该怎么做才能使用这些文件而不将它们复制到项目文件夹中?

【问题讨论】:

    标签: include mplab c18


    【解决方案1】:

    只需使用“添加”对话框将标题添加到项目中,然后选择“此文件用于此项目,使用相对路径”不记得它是否是此文本,但它类似于。

    然后在你的文件中做正常的声明:

    #include "your_header.h"
    

    这应该可以正常工作。

    --更新

    使用新的 MPLAB X

    执行以下操作:

    1. 点击文件->项目属性

    2. 选择 Conf -> C18(全局选项)-> mcc18
      对于 XC8,这是在 Conf > XC8 编译器下

    3. 点击属性“包含目录”的“...”按钮

    4. 点击“浏览按钮”

    5. 找到您的项目目录

    6. 点击打开,然后点击确定并应用

    7. 构建您的应用!

    现在应该可以了。

    【讨论】:

    • 嗨 Diego,我在哪里可以找到这个“添加”对话框?我正在使用 MPLAB X IDE。
    • 只需进入项目菜单 -> 将文件添加到项目
    • 对不起,让我下载,我会在几分钟内回复你。
    • 这里的关键是要意识到#include 只查看编译器的“包含目录”,而不是项目的“源文件夹”。
    • 为了概括这一点,我想补充一下 Diego 的回答,如果您使用的是 XC32 而不是 C18,您可以查看“项目属性”->“XC32(全局选项)”-> “xc32-gcc” 在那里,你会发现一个下拉选择框“选项类别:”,包括“预处理和消息”。从表中选择“包含目录”项并浏览以指明您要添加的目录
    【解决方案2】:

    我知道这是一个老问题,但我想添加另一个提示,因为我自己只是偶然发现了它。如果在 Windows 和 Linux 系统之间来回切换,一定要注意文件名中的大小写。在 Windows 上,这没关系。但是,在 Linux 上,您需要确保您的 #include 引用与实际文件具有相同的大小写。

    如果文件在磁盘上保存为“UARTIO.INC”,则您的包含需要:

    #INCLUDE "UARTIO.INC"  **EXACTLY**
    

    如果你把它写成:

    #INCLUDE "UARTIO.inc", or #INCLUDE "uartio.inc"
    

    它在 Windows 上可以正常工作,但在 Linux 上会因“无法找到包含文件”错误而失败。

    请注意,将 MPLAB 设置为忽略大小写与此无关。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-22
      • 2021-02-24
      相关资源
      最近更新 更多