#include <iostream>
#include <string>
#include <fstream>

int main (void)
{
    // Nothing here.
}


我正在使用Makefile进行编译。

CXXFLAGS    = -std=c++11 -O2 -g -Wall -fmessage-length=0

OBJS        = ProgramEntry.o

LIBS        =

TARGET      = Reading

$(TARGET):  $(OBJS)
    $(CXX) -o $(TARGET) $(OBJS) $(LIBS)

all:    $(TARGET)

clean:
    rm -f $(OBJS) $(TARGET)


导致未定义的引用。

undefined reference to --


我认为makefile没有使用任何头文件。如果我添加了头文件的目录,可能我知道如何修复make文件。

最佳答案

它正在使用标头,否则会得到编译器错误,而不是链接错误。

将以下行更改为此:

OBJS        = ProgramEntry.o GetNodes.o GetElements.o MeshData.o


要么

OBJS        = *.o


在当前目录中添加所有对象。

关于c++ - undefined reference ,假定makefile未使用头文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41400545/

10-09 06:23