HP LaserJet LCD library error

Hello, I have salvaged some old LCD from laser printers. I decided to control these with with Arduino. They have a 20 pin connector, so I was looking for some library to control these because my programming skills are not very good. I found this library, but when I was trying to upload the example code to my Arduino UNO, I have got following error message:

Arduino: 1.6.4 (Windows 7), Board: “Arduino Uno”

Arduino: 1.6.4 (Windows 7), Board: “Arduino Uno”

Build options changed, rebuilding all

Using library HpLaserJetLcd in folder: C:\Program Files (x86)\Arduino\libraries\HpLaserJetLcd (legacy)

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10604 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino -IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard -IC:\Program Files (x86)\Arduino\libraries\HpLaserJetLcd C:\Users\KERRBO~1\AppData\Local\Temp\build2854781503675128486.tmp\HelloWorld.cpp -o C:\Users\KERRBO~1\AppData\Local\Temp\build2854781503675128486.tmp\HelloWorld.cpp.o

In file included from HelloWorld.pde:25:0:
C:\Program Files (x86)\Arduino\libraries\HpLaserJetLcd/HpLaserJetLcd.h:85:16: error: conflicting return type specified for ‘virtual void HpLaserJetLcd::write(uint8_t)’
virtual void write(uint8_t);
^
In file included from C:\Program Files (x86)\Arduino\libraries\HpLaserJetLcd/HpLaserJetLcd.h:15:0,
from HelloWorld.pde:25:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Print.h:48:20: error: overriding ‘virtual size_t Print::write(uint8_t)’
virtual size_t write(uint8_t) = 0;
^
Error compiling.

Here is the example code that i was using:

/*
  HpLaserJetLcd libraries - Hello World
 
 This sketch prints "Hello World!" to the LCD
 and shows the time.
 
 See the web link below for latest wiring information.
 
 Library originally added 18 Apr 2008
 by David A. Mellis
 library modified 5 Jul 2009
 by Limor Fried (http://www.ladyada.net)
 example added 9 Jul 2009
 by Tom Igoe 
 modified 25 July 2009
 by David A. Mellis
 Ported to HpLaserJetLcd 2 April 2011
 
 This example code is in the public domain.

 http://arduino.cc/playground/Main/HpLaserJetLcd
*/

// include the library code:
#include <HpLaserJetLcd.h>

// initialize the library with the numbers of the interface pins
HpLaserJetLcd lcd(3, 5, 7, 8);

void setup() {
  // set up the LCD's number of columns and rows: 
  lcd.begin(16, 2);

  // Print a message to the LCD.
  lcd.print("hello, world!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
    
  // print the number of seconds since reset:
  lcd.print(millis()/1000);
}

Please help and sorry for my bad english.

The library inherits from the Print class. The Print class defines the write() method as a pure virtual function. This means that every class that inherits from Print must implement the write() method.

The signature of the write() method, in the Print class, changed, at some point, to require the method to return the number of bytes written.

The library you have has not been updated since the Print class was changed.

The solution is simple, and has been documented many times. Change the library to have the correct signature for the write() method, and return a value as required.

PaulS:
The library inherits from the Print class. The Print class defines the write() method as a pure virtual function. This means that every class that inherits from Print must implement the write() method.

The signature of the write() method, in the Print class, changed, at some point, to require the method to return the number of bytes written.

The library you have has not been updated since the Print class was changed.

The solution is simple, and has been documented many times. Change the library to have the correct signature for the write() method, and return a value as required.

Since English is not his first language, you would consider doing more than lecture and point out to him to WHERE to change the library.

you would consider doing more than lecture and point out to him to WHERE to change the library.

The messages say exactly which lines to edit. The issue has been discussed many times on the forum. Why should I repeat that information for the 400th time for someone too (insert whatever adjective you like) to search?