如何将目录添加到C头包含路径?

wdk*_*nls 11 c macos

我在为自己依赖于pcre.h的程序安装依赖项时遇到问题.我把它安装到/ opt/local/include,但C编译器没有看到它,因此给了我:

错误:pcre.h:没有这样的文件或目录

我通过编写一个试图包含它的hello world程序来证实这一点:

#include <pcre.h>
#include <stdio.h>

int main(void)
{
    printf("hello, world\n");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

除非我指定路径,否则这也会产生错误</opt/local/include/pcre.h>.

我希望C编译器默认找到它,但我不知道它在哪里配置.选项卡完成没有显示任何HEADER_PATH环境变量,我找不到类似于XCode的任何类似的东西.然而,我正在使用Mac OSX Snow Leopard来解决这个问题.

R..*_*R.. 25

使用-I /opt/local/include在命令行或者C_INCLUDE_PATH=/opt/local/include在环境中.


a p*_*erd 5

使用该pcre-config实用程序获取正确的标志:

$ pcre-config --libs --cflags
-L/opt/local/lib -lpcre
-I/opt/local/include
Run Code Online (Sandbox Code Playgroud)

如果您通过命令行进行编译,

$ gcc -Wall -g `pcre-config --libs --cflags` main.c
Run Code Online (Sandbox Code Playgroud)