Linux上的C++ makefile,带有多个*.cpp文件

New*_*ile 7 c++ linux makefile file

我正在尝试使用多个文件制作一个makefile.有人能帮我吗?我拥有的文件是file1.cpp,file2.h和main.cpp

file1.cpp包含我的函数.file2.h包含我的函数声明.

main.cpp [包含代码中的file2.h] file1.cpp [包含代码中的file2.h]

我做到了

all: main
gcc -g -Wall -o main main.cpp
Run Code Online (Sandbox Code Playgroud)

但是当我尝试编译时,它给了我很多错误.我的代码在日食上运行得很好.

tor*_*dro 8

你需要编译你使用的所有.cpp文件(我假设它们不包括在某处).这样编译器就会知道file1.cpp和main.cpp是一起使用的.另外我建议使用g ++而不是gcc,因为g ++是特定的c ++编译器,而gcc支持C和C++.

尝试使用:

g++ -g -Wall -o main main.cpp file1.cpp
Run Code Online (Sandbox Code Playgroud)

另外我建议使用像这样的Makefile变量:

SOURCES = main.cpp file1.cpp
g++ -g -Wall -o main $(SOURCES)
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助 :)