编译和链接c ++程序 - make file

时间:2013-06-27 07:27:33

标签: c++ compilation makefile

我正在为我的程序构建一个make文件。 主要是:twitServer.cpp 及其使用:Command.h Client.h

我构建了一个make文件,但它似乎不起作用。 你能帮我解决一下吗?

twitServer: twitServer.o Command.o Client.o
     g++ -Wall -o twitServer.o Command.o Client.o twitServer

twitServer.o: twitServer.cpp Command.h Client.h
     g++ -c -Wall twitServer.cpp

Command.o: Command.cpp Command.h
     g++ -c -Wall Command.cpp

Client.o: Client.cpp Client.h
     g++ -c -Wall Client.cpp

clean:
     rm twitServer Client.o Command.o Client.o

我的错误是: g ++:twitServer:没有这样的文件或目录

虽然我收到了所有这些文件: Client.cpp Client.o Command.h Makefile twitServer.cpp Client.h Command.cpp Command.o Makefile~twitServer.o

2 个答案:

答案 0 :(得分:1)

更改-o标志的位置:

twitServer: twitServer.o Command.o Client.o
     g++ -Wall twitServer.o Command.o Client.o -o twitServer

答案 1 :(得分:1)

此:

g++ -Wall -o twitServer.o Command.o Client.o twitServer

错了。您不希望编译器输出到twitServer.o 链接twitServer文件,对吗?这两个应该翻转,如下:

g++ -Wall -o twitServer Command.o Client.o twitServer.o