【发布时间】:2014-10-02 15:03:24
【问题描述】:
我创建了一个简单的项目来学习如何创建静态库。我在 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 参数中使用路径。
【问题讨论】:
标签: c macos static-libraries file-not-found codelite