makefile中未定义的引用错误
Undefined reference error in makefile
我的makefile有问题
assignment3: BSTapp.cpp BST.o
g++ -o assignment3 BSTapp.cpp BST.o
BST.o: BST.cpp BST.h Node.o
g++ -c BST.cpp -o BST.o
Node.o: Node.h Node.cpp
g++ -c Node.cpp -o Node.o
获取对Node类中所有方法的未定义引用。但是如果我直接使用
编译g++ -o assignment3 BSTapp.cpp BST.h BST.cpp Node.h Node.cpp
一切正常。我在makefile中做错了什么?
因为您在assignment3:
规则下的makefile命令中遗漏了Node.o
文件:
g++ -o assignment3 BSTapp.cpp BST.o
应该g++ -o assignment3 BSTapp.cpp BST.o Node.o
备注:
。请不要自己编译头文件!
g++ -o assignment3 BSTapp.cpp BST.h BST.cpp Node.h Node.cpp
应该g++ -o assignment3 BSTapp.cpp BST.cpp Node.cpp
二世。您的Makefile非常无组织。最好这样做:
OBJECTS = $(patsubst %.cpp, %.o, $(wildcard *.cpp))
all: assignment3
assignment3: $(OBJECTS)
g++ -o $@ $^
%.o: %.cpp
g++ -c -Wall -o $@ $<
相关文章:
- 我的项目不会像"undefined reference to `grpc::g_core_codegen_interface'"那样使用未定义的引用错误进行编译
- C++引用错误
- 已定义函数时出现 G++ "未定义的引用"错误
- 链接 cmake 时出现未定义的引用错误
- 只有级联分类器会发出未定义的引用错误
- 2个模板化类的非模板友元函数未定义引用错误
- C/C++ 取消引用错误:在空检查之前取消引用
- 为什么我的C++代码无法编译,出现未定义的引用错误
- 我的代码中C++未定义的引用错误?
- 模板专用化会导致未定义的引用错误
- .cpp文件中未定义的引用错误
- c++ 中目录中文件的未定义引用错误
- Opencv4 使用 pkg-config 给出未定义的引用错误
- 使用Cygwin C++时出现未定义的引用错误,为什么我的文件没有链接?
- 共享指针取消引用错误
- 编译简单的多文件类程序时出现未定义的引用错误
- 模板函数产生未定义的引用错误
- 调用提取重加载器会产生对"运算符"的未定义引用错误>>
- 如何修复"未定义的引用"错误 opencv 和 g++
- 未定义的引用错误,我该怎么办?