Hello folks,
I'm using mbed LPC1768 prototyping board. Nowadays I'm trying to compile my mbed programs with uVision 4.21, working on a 20x4LCD example. I've successfully compiled my program with online mbeed compiler but when I'm trying to compile my program at uVision 4.21, it throws 3 errors like;
.\build\deneme.axf: Error: L6218E: Undefined symbol TextLCD::locate(int, int) (referred from main.o).
.\build\deneme.axf: Error: L6218E: Undefined symbol TextLCD::TextLCD(PinName, PinName, PinName, PinName, PinName, PinName, TextLCD::LCDType) (referred from main.o).
.\build\deneme.axf: Error: L6218E: Undefined symbol vtable for TextLCD (referred from main.o).
At the beggining, I've downloaded apnt207.zip file and read apnt207.pdf from begginning to the end. I've applied all instructions step by step, so I don't think that I've made a mistake when I was configuring mbed settings. I've also included TextLCD.h library in my program but nothing changed. What sould posibbly gives this errors? Am I doing mistakes when I'm adding libraries?
My Code :
#include "mbed.h"
#include "TextLCD.h"
Timer timer;
DigitalOut led(LED1);
long int begin, end,end1,end2,end3,end4,end5,times;
TextLCD lcd(p16, p15, p20, p19, p18, p17,TextLCD::LCD20x4);
int main()
{
timer.start();
begin = timer.read_us();
led = !led;
end = timer.read_us();
lcd.printf("Led Duration : %Ld us",end-begin);
end1 = timer.read_us();
lcd.printf("\nLCD Write : %Ld us",end1-end);
end5=timer.read_us();
lcd.locate(0,2);
end2=timer.read_us();
lcd.printf("LCD Locate : %Ld us",end2-end5);
end3=timer.read_us();
times=end-begin;
end4=timer.read_us();
lcd.printf("\nCalculation : %Ld us",end4-end3);
wait(2);
}
It works now, i just had to specify the EthernetNetIf.ar file in the linker. It contains all the .o files, and hence the error.