我有一个非常 简单的 makefile。我想在这个 makefile 中做的就是编译我的文件并为我的测试创建一个可执行文件。我有以下文件:
- Test.cpp - 主要功能
- 基础类.cpp
- BaseClass.h - 基类的头文件
- DerivedClass.cpp - 继承基类
- DerivedClass.h - 派生类的头文件
这是我的生成文件:
all: Test
Test: BaseClass.o DerivedClass.o Test.o
g++ -o BaseClass.o DerivedClass.o Test.o Test
Test.o: Test.cpp BaseClass.h DerivedClass.h
g++ -c Test.cpp
Package.o: BaseClass.cpp BaseClass.h
g++ -c BaseClass.cpp
DerivedClass.o: DerivedClass.cpp DerivedClass.h
g++ -c DerivedClass.cpp
clean:
rm -rf *.o
我以前从未为 5 个文件创建过 makefile。我可以很容易地用 3 创建一个,但我不知道出了什么问题。我得到的错误是:
测试:没有fuch文件或目录
编辑:谢谢,乔!就是这样。我的愚蠢疏忽。
最佳答案
Test
应该是 -o
的参数:
Test: BaseClass.o DerivedClass.o Test.o
g++ -o Test BaseClass.o DerivedClass.o Test.o
请注意,我将 Test
从行尾移到了 -o
之后。
关于c++ - Makefile 给我一个错误 - 没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20389809/