【发布时间】:2018-04-05 06:35:25
【问题描述】:
谁能帮我为我的项目创建一个makefile?我需要从 makefile 创建 3 个二进制文件。
二进制文件像这样单独编译:
gcc -D_POSIX_SOURCE -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE -pthread main.c service_client_socket.c service_listen_socket.c get_listen_socket.c -o serverThreaded
gcc -D_POSIX_SOURCE -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE -pthread main.c service_client_socket.c service_listen_socket.c get_listen_socket.c -o server
(因此它创建了 2 个相同的二进制文件,但名称不同,serverThreaded 和 server)
而且我也需要 makefile 中的这个:
gcc -D_POSIX_SOURCE -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE -pthread client.c -o client
编辑:我认为这是我需要的?
all: serverThreaded server client
gcc -D_POSIX_SOURCE -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE -pthread main.c service_client_socket.c service_listen_socket.c get_listen_socket.c -o serverThreaded
gcc -D_POSIX_SOURCE -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE -pthread main.c service_client_socket.c service_listen_socket.c get_listen_socket.c -o server
gcc -D_POSIX_SOURCE -Wall -Werror -pedantic -std=c99 -D_GNU_SOURCE -pthread client.c -o client
.PHONY: all
【问题讨论】:
-
这个问题给人的印象是你已经有一个
makefile来创建一个文件,现在你想改变它,让它创建 3 个文件。现在(编辑后)您似乎根本没有任何makefile!您可能要考虑不使用makefile,而只使用一个shell 脚本来进行编译。或查看here 以获取简单的makefile示例。 -
@anatolyg 我的作业将从 makefile 中自动编译,因此很遗憾我需要制作一个。我想出了如何使用它来编译一个文件,但这就是我可以开始工作的全部