Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arduino:在库之间包含_Arduino_Arduino Ide - Fatal编程技术网

Arduino:在库之间包含

Arduino:在库之间包含,arduino,arduino-ide,Arduino,Arduino Ide,我正试着在我的素描中加入。作为一个沙箱,我使用以下代码(在没有include的情况下编译得很好): 缺少的IRLibProtocols.h位于IRLibProtocols库中 这似乎是一个常见的问题:库之间相互使用。在CMake中,我可以适当地设置include目录,但这里我能看到的唯一工具是来自ArduinoIDE的“添加库”对话框 这个IRLibAll.h应该包含IRLib2中的所有内容。也可以单独导入库,但这并不能解决包含路径的问题。 如何将代码设置为包含相互引用的库 我还在存储库上创建了

我正试着在我的素描中加入。作为一个沙箱,我使用以下代码(在没有include的情况下编译得很好):

缺少的IRLibProtocols.h位于IRLibProtocols库中

这似乎是一个常见的问题:库之间相互使用。在CMake中,我可以适当地设置include目录,但这里我能看到的唯一工具是来自ArduinoIDE的“添加库”对话框

这个IRLibAll.h应该包含IRLib2中的所有内容。也可以单独导入库,但这并不能解决包含路径的问题。 如何将代码设置为包含相互引用的库


我还在存储库上创建了一个:1.6.5-r5及更高版本的Arduino IDE通常需要向库依赖关系草图中添加
\include
指令,以便Arduino IDE知道哪些文件夹需要添加到包含路径

因此,一种解决方案是在草图中添加以下线条:

#包括
#包括
#包括
#包括
Arduino IDE 1.6.6中的工具添加了一个改进的依赖项扫描系统。使用Arduino IDE的任何最新版本,您的草图将在编译时不添加任何额外的
#include
指令

因此,更好的解决方案是更新到Arduino IDE的最新官方版本。


由于[许可证文档问题[(),当你通过apt install Arduino等安装Arduino IDE时,你会得到一个非常过时的版本,这是一个相当于1.0.5的版本。你错过了过去4年中所做的所有改进。最好总是安装从下载的官方Arduino IDE。

哦,对不起,我的屏幕截图让人困惑。顶部显示的路径包括一个IRLib2文件夹,因为这是已访问文件夹的历史记录。我当前的文件夹是libraries,它显示的更为黑色。libraries直接包含其他文件夹。使用Raspbian上的Arduino IDE 1.8.5,它可以正常工作。请检查文件/home/lhk/sketchbook/libraries/IRLibProtocols/IRLibProtocols.h存在。问题是我的IDE版本。它将自己标记为2:1.0.5,我认为它是2.x版本,实际上它是非常过时的1.0.5版本。包源似乎已经过时了。现在它可以编译了。谢谢
#include <IRLibAll.h>

void setup(){}
void loop(){}
/home/lhk/sketchbook/libraries/IRLib2/IRLibAll.h:22:0,
                 from sketch_mar04f.ino:1:
/home/lhk/sketchbook/libraries/IRLib2/IRLibDecodeBase.h:13:28: fatal error: IRLibProtocols.h: No such file or directory
compilation terminated.