如何将directoy指定为包含头文件目录
我不想每次都使用如何将directoy指定为包含头文件目录,c,header-files,gnu,include-path,C,Header Files,Gnu,Include Path,我不想每次都使用-I标志来包含我以前制作的头文件。我想指定一个目录,并将头文件保存在那里,并在默认情况下在那里进行GNU gcc搜索 注:我使用windows和GNU 5.1.0。因为我的名声不好,所以我无法发表评论, 我想你可以用你自己的制作文件 从这个链接中学习: 或者这个: 或者编写自己的脚本。如果所有头文件都存储在同一目录中,则不需要使用-I选项包含每个.h文件。 你可以这样做 $(GCC) $(CFLAGS) -I$(HDR_INC_PATH) -c <source file
-I
标志来包含我以前制作的头文件。我想指定一个目录,并将头文件保存在那里,并在默认情况下在那里进行GNU gcc搜索
注:我使用windows和GNU 5.1.0。因为我的名声不好,所以我无法发表评论, 我想你可以用你自己的制作文件 从这个链接中学习: 或者这个:
或者编写自己的脚本。如果所有头文件都存储在同一目录中,则不需要使用-I选项包含每个.h文件。 你可以这样做
$(GCC) $(CFLAGS) -I$(HDR_INC_PATH) -c <source files>
HDR_FILES = $(wildcard <dir>/*.h)
$(GCC)$(CFLAGS)-I$(HDR\u INC\u PATH)-c
其中HDR_INC_PATH包含存储头的路径
如果标题位于多个位置,则可以执行以下操作
HDR_INC_PATH := -I<path1> \
-I<path2> \
-I<path3> \
and so on
HDR\u INC\u路径:=-I\
-我\
-我\
等等
其中,path1、path2和path3是标头所在的位置并使用
$(GCC) $(CFLAGS) $(HDR_INC_PATH) -c <source files>
$(GCC)$(CFLAGS)$(HDR\u INC\u PATH)-c
还可以使用$(通配符模式)搜索目录中的所有头文件。在这种情况下,您必须提到顶部目录路径,以便子目录中的标题也被采用。
差不多
$(GCC) $(CFLAGS) -I$(HDR_INC_PATH) -c <source files>
HDR_FILES = $(wildcard <dir>/*.h)
HDR\u文件=$(通配符/*.h)
其中dir是父目录的路径。然后可以在编译器配方中使用$(HDR\u文件)和-I。这是个坏主意。做其他人做的事情,使用一些构建系统(在最简单的情况下是定义一个
Makefile
,例如包含变量)…并请正确拼写。你告诉了你做什么和不想做什么。介意问个问题吗?最好的一本手册还没有涵盖?也许你可以给出一个简单的例子,说明如何在make中解决这个问题。那我就想投你一票。