编译 .h 文件
compile .h file
如何在我的制作文件中包含我自己的".h"文件的重新编译/更新。
这是我的制作文件:
COMPILER = g++
SOURCES = main.cpp
APP = executable/main
OBJECTS = $(SOURCES:.cpp=.o)
all: $(SOURCES) $(APP)
$(APP): $(OBJECTS)
$(COMPILER) $(OBJECTS) -o $@
clean:
rm -rf *.o $(APP)
假设现在我想重新编译项目,但我只是修改了 whatever.h 和 whatever1.h.这些文件包含在 main.cpp 的标头中。
将
这些文件添加到$(APP)
的依赖项列表中没有任何好处。这将导致 Make 重新链接(即从main.o
构建main
),但不重新编译(即从main.cpp
、whatever.h
和 whatever1.h
构建main.o
)。可执行文件的行为不会更改 - 它不会反映您对标头所做的更改。
应将这些文件添加到目标文件的先决条件列表中:
main.o: whatever.h whatever1.h
在应用依赖项列表中添加头文件:
COMPILER = g++
SOURCES = main.cpp
HEADERS = whatever.h whatever1.h
APP = executable/main
OBJECTS = $(SOURCES:.cpp=.o)
all: $(SOURCES) $(APP)
$(APP): $(OBJECTS) $(HEADERS)
$(COMPILER) $(OBJECTS) -o $@
clean:
rm -rf *.o $(APP)
相关文章:
- 使用 Makefile 中的头文件编译 Pybind (不使用 cmake)
- 如何使用命令提示符、记事本和 MinGW 使用主文件、头文件和实现文件编译C++程序?
- 无论如何可以将webm / mp4文件编译/记忆为.exe程序吗?(C++)
- 从生成文件编译错误:"Unable to open output file" ..."No such file or directory"
- 如何使用 GLFW 预编译的二进制文件编译 Visual Studio 2019 发布版本
- Arduino IDE中自定义库类的.h文件编译错误的原因是什么
- makefile和错误将与大型项目分开的文件编译
- 如何使用生成文件编译具有多个目录的 c++ 项目
- 我可以将Visual Studio 2015头文件编译成dll并在VS2013中使用它吗?
- 使用Bazel将C 文件编译为python.h
- 使用 .a 文件编译简单的C++文件
- OpenCV 3.2 文件编译
- 如何从多个 cpp 文件编译 WebAssembly
- 从多个文件编译可以"undefined reference"
- 使用静态依赖性为共享二进制文件编译语法需要更加清晰
- 将Gsoap Src文件编译到我的项目中
- 如何用多个文件编译make下的dlib
- 字段的类型不完整,从多个文件编译
- 强制将特定文件编译为Objective-C/文件类型,但将整个项目编译为Objective C++
- OpenGLES 标头(包括 Availability.h)可防止 CPP 文件编译