我创建了一个简单的项目来学习如何创建静态库。我在 CodeLite 中创建了一个新的工作区、一个新的项目和一个新的静态库。
在我得到的静态库中,在“include”文件夹中有一个名为 helloworld.h
的 .h 文件,在“src”文件夹中有一个名为 helloworld.c 的文件。 C
。输出文件在工作区内名为 lib (../lib) 的文件夹中生成。
在同一个工作区内,我有一个包含文件 .c 的项目,其中使用 #include "helloworld.h"
调用 helloworld。最后,项目的设置是:
链接器菜单:
库搜索路径:../lib 图书馆:
一般菜单:
编译项目时出现以下错误:
fatal error: 'helloworld.h' file not found
项目编译没有问题的唯一方法是在 include 参数中获取文件的相对路径:
#include "../HelloWorldLib/include/helloworld.h"
我想知道是否有一种无需添加文件路径即可工作的方法。我在 MAC OS 10.9.5 中使用 CodeLite。同样的问题出现在 Ubuntu 中。
我的老师解释说这不会发生在 CodeLite Windows 中,但他不知道在 Mac 中会发生什么。此外,不必在 include 参数中使用路径。
最佳答案
如果您转到“编译器”选项卡而不是“链接器”选项卡,请尝试在“包含路径”选项下添加您的“包含”目录。
关于CodeLite 静态库找不到包含文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26163753/