Hi Gurus,
I am Laszlo from Hungary.
Please, take a look at these files:
--- The main file
---------------------------------------------------------------------
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "base.h"
int main(int argc, char* argv[])
{
system("clear");
Base* b = new Base();
printf("\n---------- %s ---------------\n", b->toString());
delete b;
return 0;
}//main
--- The base.h file
---------------------------------------------------------------------
#ifndef __BASE
#define __BASE
class Base{
private:
char* _str;
public:
Base();
Base(Base &);
~Base();
char* toString();
char* toHtml();
};
#endif
--- The base.c file
---------------------------------------------------------------------
#include "base.h"
using namespace std;
Base::Base(Base &s){
}
Base::~Base(){
}
char* Base::toString()
{
char* rv = "this is the toString()";
return rv;
}
char* Base::toHtml()
{
char* rv = "this is the toHtml()";
return rv;
}
--- The Makefile file
---------------------------------------------------------------------
compile :
g++ -c base.c -o base.o
g++ axf.c -o axf.o
clear :
clear
clean :
rm *.o
run :
./axf.o
--------------------------------------------------------------------------------------------
After the command
make clear clean compile run
I got these error messages:
rm *.o
g++ -c base.c -o base.o
g++ axf.c -o axf.o
/tmp/cc2K7HjB.o(.text+0x4a): In function `main':
: undefined reference to `Base::Base[in-charge]()'
/tmp/cc2K7HjB.o(.text+0x88): In function `main':
: undefined reference to `Base::toString()'
/tmp/cc2K7HjB.o(.text+0xaf): In function `main':
: undefined reference to `Base::~Base [in-charge]()'
collect2: ld returned 1 exit status
make: *** [compile] Error 1
Could somebody tell me what is wrong there?
Thank you.