【发布时间】:2021-09-07 17:59:43
【问题描述】:
我正在尝试使用 Makefile 将源代码编译成 2 个可执行应用程序。
如何使用单个 Makefile 一次正确编译两个可执行应用程序?
【问题讨论】:
我正在尝试使用 Makefile 将源代码编译成 2 个可执行应用程序。
如何使用单个 Makefile 一次正确编译两个可执行应用程序?
【问题讨论】:
问题是两个源文件都包含在两个版本的可执行文件中,这意味着有两个单独的 main 实例。
换行:
$(EXECUTABLE): $(OBJ_EXE) $(LIBRARY)
与
%: %00.o $(LIBRARY)
这将确保只有client00.o 用于构建client,而server00.o 用于构建server。
【讨论】:
LDFLAGS 添加到编译行(.c.o 中的命令)。 LDFLAGS 包含链接时间标志,应该只在链接命令中。