Ошибка в makefile.win

Я только учусь языку C++ и для практики использую IDE Dev-C++. Попытался создать класс в качестве отдельного файла. Базовые возможности для создания такого предоставляет сама среда разработки. Сначала компилятор ругался на cout но потом исправил. Вот только при компиляции, мне стало выдавать вот такой прикол.

C:\Users\vanie\Documents\C++ proj\BasicProgram\main.o   main.c:(.text+0x8c): undefined reference to `Base::func1()'
C:\Users\vanie\Documents\C++ proj\BasicProgram\main.o   main.c:(.text+0x96): undefined reference to `Base::func2()'
C:\Users\vanie\Documents\C++ proj\BasicProgram\collect2.exe [Error] ld returned 1 exit status
26      C:\Users\vanie\Documents\C++ proj\BasicProgram\Makefile.win recipe for target 'BasicProgram.exe' failed

И что с этим делать я не знаю. Никогда прежде в этот файл не лез так как среда разработки делала всё сама. Ниже будет весь код имеющийся в проекте.

Основной файл.

#include <iostream>
#include "Base.h"
using std::cin;
using std::cout;
using std::endl;

void Foo() {
    cout << "Hello World!" << endl;
}

int main() {
    Base test;
    setlocale(LC_ALL, "");
    cout<<"Это базовая программа."<<endl;
    test.func1();
    test.func2();
    return 0;
}

Заголовочный файл класса Base.

#ifndef BASE_H
#define BASE_H

class Base
{
    public:
        Base();
        func1();
        func2();
    protected:
};

#endif

Исходный файл того же класса.

#include <iostream>
#include "Base.h"

using namespace std;

Base::Base(){
};

void func1(){
    cout<<"succes1";
}

void func2(){
    cout<<"succes2";
}

ну и на всякий случай, всё что есть в Makefile.win

# Project: BasicProgram
# Makefile created by Dev-C++ 5.11

CPP      = g++.exe
CC       = gcc.exe
WINDRES  = windres.exe
RES      = BasicProgram_private.res
OBJ      = main.o Base.o $(RES)
LINKOBJ  = main.o Base.o $(RES)
LIBS     = -L"C:/Program Files/Dev-Cpp/MinGW64/x86_64-w64-mingw32/lib32" -static-libgcc -m32
INCS     = -I"C:/Program Files/Dev-Cpp/MinGW64/include" -I"C:/Program Files/Dev-Cpp/MinGW64/x86_64-w64-mingw32/include" -I"C:/Program Files/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include"
CXXINCS  = -I"C:/Program Files/Dev-Cpp/MinGW64/include" -I"C:/Program Files/Dev-Cpp/MinGW64/x86_64-w64-mingw32/include" -I"C:/Program Files/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include" -I"C:/Program Files/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++"
BIN      = BasicProgram.exe
CXXFLAGS = $(CXXINCS) -m32
CFLAGS   = $(INCS) -m32
RM       = rm.exe -f

.PHONY: all all-before all-after clean clean-custom

all: all-before $(BIN) all-after

clean: clean-custom
    ${RM} $(OBJ) $(BIN)

$(BIN): $(OBJ)
    $(CPP) $(LINKOBJ) -o $(BIN) $(LIBS)

main.o: main.c
    $(CPP) -c main.c -o main.o $(CXXFLAGS)

Base.o: Base.cpp
    $(CPP) -c Base.cpp -o Base.o $(CXXFLAGS)

BasicProgram_private.res: BasicProgram_private.rc 
    $(WINDRES) -i BasicProgram_private.rc -F pe-i386 --input-format=rc -o BasicProgram_private.res -O coff 

Прошу помочь с этой проблемой! Сама программа вызывает и использует консольное окно.


Ответы (0 шт):