ofxNcurses example won't build

I’m trying to compile the ofxNcurses example, without success.

I have a feeling some parts of the project might be outdated, especially because the last commit to the ofxNcurses github repo was in 2014.

bernardo@paulo-K46CB:~/openFrameworks/addons/ofxNcurses/example$ ls
addons.make  config.make        Makefile  openFrameworks-Info.plist  src
bin          example.xcodeproj  obj       Project.xcconfig
bernardo@paulo-K46CB:~/openFrameworks/addons/ofxNcurses/example$ make
HOST_OS=Linux
checking pkg-config libraries:   cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal libcurl glfw3 libpulse-simple alsa gl glu glew gtk+-3.0 libmpg123 
with PKG_CONFIG_LIBDIR=
Compiling OF library for Release
make[1]: Entering directory '/home/bernardo/openFrameworks/libs/openFrameworksCompiled/project'
HOST_OS=Linux
checking pkg-config libraries:   cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal libcurl glfw3 libpulse-simple alsa gl glu glew gtk+-3.0 libmpg123 
with PKG_CONFIG_LIBDIR=
HOST_OS=Linux
checking pkg-config libraries:   cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal libcurl glfw3 libpulse-simple alsa gl glu glew gtk+-3.0 libmpg123 
with PKG_CONFIG_LIBDIR=
HOST_OS=Linux
checking pkg-config libraries:   cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal libcurl glfw3 libpulse-simple alsa gl glu glew gtk+-3.0 libmpg123 
with PKG_CONFIG_LIBDIR=
Done!
make[1]: Leaving directory '/home/bernardo/openFrameworks/libs/openFrameworksCompiled/project'


Compiling example for Release
make[1]: Entering directory '/home/bernardo/openFrameworks/addons/ofxNcurses/example'
HOST_OS=Linux
checking pkg-config libraries:   cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal libcurl glfw3 libpulse-simple alsa gl glu glew gtk+-3.0 libmpg123 
with PKG_CONFIG_LIBDIR=
Compiling /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp
g++ -c -O3 -march=native -mtune=native -DNDEBUG -Wall -Werror=return-type -std=c++14 -DGCC_HAS_REGEX -DOF_USING_GTK -DOF_USING_GTK -DOF_USING_MPG123  -D_REENTRANT -pthread -I/usr/include/gstreamer-1.0 -I/usr/lib/x86_64-linux-gnu/gstreamer-1.0/include -I/usr/include/AL -I/usr/include/alsa -I/usr/include/libdrm -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/mirclient -I/usr/include/mircore -I/usr/include/mircookie -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I../../../libs/fmodex/include -I../../../libs/glm/include -I../../../libs/glm/include/glm -I../../../libs/glm/include/glm/gtc -I../../../libs/glm/include/glm/simd -I../../../libs/glm/include/glm/detail -I../../../libs/glm/include/glm/gtx -I../../../libs/json/include -I../../../libs/kiss/include -I../../../libs/pugixml/include -I../../../libs/tess2/include -I../../../libs/utf8/include -I../../../libs/utf8/include/utf8 -I../../../libs/openFrameworks -I../../../libs/openFrameworks/math -I../../../libs/openFrameworks/events -I../../../libs/openFrameworks/app -I../../../libs/openFrameworks/3d -I../../../libs/openFrameworks/gl -I../../../libs/openFrameworks/communication -I../../../libs/openFrameworks/utils -I../../../libs/openFrameworks/video -I../../../libs/openFrameworks/sound -I../../../libs/openFrameworks/types -I../../../libs/openFrameworks/graphics -I/home/bernardo/openFrameworks/addons/ofxNcurses/example/src -I/home/bernardo/openFrameworks/addons/ofxNcurses/src -MMD -MP -MF obj/linux64/Release/src/main.d -MT obj/linux64/Release/src/main.o -o obj/linux64/Release/src/main.o -c /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp
In file included from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:3:0:
/home/bernardo/openFrameworks/addons/ofxNcurses/src/ofAppCurses.h:44:11: error: invalid covariant return type for ‘virtual ofPoint ofAppCurses::getWindowPosition()’
  ofPoint  getWindowPosition();
           ^
In file included from ../../../libs/openFrameworks/ofMain.h:80:0,
                 from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:1:
../../../libs/openFrameworks/app/ofAppBaseWindow.h:47:20: error:   overriding ‘virtual glm::vec2 ofAppBaseWindow::getWindowPosition()’
  virtual glm::vec2 getWindowPosition() {return glm::vec2(); }
                    ^
In file included from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:3:0:
/home/bernardo/openFrameworks/addons/ofxNcurses/src/ofAppCurses.h:45:11: error: invalid covariant return type for ‘virtual ofPoint ofAppCurses::getWindowSize()’
  ofPoint  getWindowSize();
           ^
In file included from ../../../libs/openFrameworks/ofMain.h:80:0,
                 from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:1:
../../../libs/openFrameworks/app/ofAppBaseWindow.h:48:20: error:   overriding ‘virtual glm::vec2 ofAppBaseWindow::getWindowSize()’
  virtual glm::vec2 getWindowSize(){return glm::vec2(); }
                    ^
In file included from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:3:0:
/home/bernardo/openFrameworks/addons/ofxNcurses/src/ofAppCurses.h:46:11: error: invalid covariant return type for ‘virtual ofPoint ofAppCurses::getScreenSize()’
  ofPoint  getScreenSize();
           ^
In file included from ../../../libs/openFrameworks/ofMain.h:80:0,
                 from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:1:
../../../libs/openFrameworks/app/ofAppBaseWindow.h:49:20: error:   overriding ‘virtual glm::vec2 ofAppBaseWindow::getScreenSize()’
  virtual glm::vec2 getScreenSize(){return glm::vec2(); }
                    ^
/home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp: In function ‘int main()’:
/home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:7:33: error: invalid new-expression of abstract class type ‘ofAppCurses’
  ofAppBaseWindow * window = new ofAppCurses;
                                 ^
In file included from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:3:0:
/home/bernardo/openFrameworks/addons/ofxNcurses/src/ofAppCurses.h:35:7: note:   because the following virtual functions are pure within ‘ofAppCurses’:
 class ofAppCurses : public ofAppBaseWindow {
       ^
In file included from ../../../libs/openFrameworks/ofMain.h:80:0,
                 from /home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:1:
../../../libs/openFrameworks/app/ofAppBaseWindow.h:28:15: note: 	virtual void ofAppBaseWindow::setup(const ofWindowSettings&)
  virtual void setup(const ofWindowSettings & settings)=0;
               ^
../../../libs/openFrameworks/app/ofAppBaseWindow.h:29:15: note: 	virtual void ofAppBaseWindow::update()
  virtual void update()=0;
               ^
../../../libs/openFrameworks/app/ofAppBaseWindow.h:30:15: note: 	virtual void ofAppBaseWindow::draw()
  virtual void draw()=0;
               ^
../../../libs/openFrameworks/app/ofAppBaseWindow.h:38:25: note: 	virtual ofCoreEvents& ofAppBaseWindow::events()
  virtual ofCoreEvents & events() = 0;
                         ^
../../../libs/openFrameworks/app/ofAppBaseWindow.h:39:44: note: 	virtual std::shared_ptr<ofBaseRenderer>& ofAppBaseWindow::renderer()
  virtual std::shared_ptr<ofBaseRenderer> & renderer() = 0;
                                            ^
/home/bernardo/openFrameworks/addons/ofxNcurses/example/src/main.cpp:8:20: error: ‘ofSetWindow’ was not declared in this scope
  ofSetWindow(window);
                    ^
../../../libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:221: recipe for target 'obj/linux64/Release/src/main.o' failed
make[1]: *** [obj/linux64/Release/src/main.o] Error 1
make[1]: Leaving directory '/home/bernardo/openFrameworks/addons/ofxNcurses/example'
../../../libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:124: recipe for target 'Release' failed
make: *** [Release] Error 2

no one? :frowning: