0

I'm trying to compile the lib ARvrml (From ARToolKit. See the source here) on Ubuntu and get this:

g++ -c -I../../../include -I/usr/local/include/openvrml -I/usr/X11R6/include -O -pthread -I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/X11R6/include arViewer.cpp -o arViewer.o
In file included from arViewer.cpp:37:0:
arViewer.h:74:12: error: ‘object_t’ in ‘class openvrml::gl::viewer’ does not name a type
arViewer.h:85:13: error: ‘object_t’ in ‘class openvrml::gl::viewer’ does not name a type
arViewer.h:90:13: error: ‘object_t’ in ‘class openvrml::gl::viewer’ does not name a type
arViewer.h:97:13: error: ‘object_t’ in ‘class openvrml::gl::viewer’ does not name a type
arViewer.cpp: In constructor ‘arVrmlBrowser::arVrmlBrowser()’:
arViewer.cpp:41:71: error: no matching function for call to ‘openvrml::browser::browser(std::ostream&, std::ostream&)’
arViewer.cpp:41:71: note: candidates are:
/usr/local/include/openvrml/openvrml/browser.h:284:9: note: openvrml::browser::browser(openvrml::resource_fetcher&, std::ostream&, std::ostream&)
/usr/local/include/openvrml/openvrml/browser.h:284:9: note:   candidate expects 3 arguments, 2 provided
/usr/local/include/openvrml/openvrml/browser.h:195:24: note: openvrml::browser::browser(openvrml::browser&)
/usr/local/include/openvrml/openvrml/browser.h:195:24: note:   candidate expects 1 argument, 2 provided
arViewer.cpp: At global scope:
arViewer.cpp:269:1: error: ‘object_t’ in ‘class openvrml::viewer’ does not name a type
arViewer.cpp:283:1: error: ‘object_t’ in ‘class openvrml::viewer’ does not name a type
arViewer.cpp:292:1: error: ‘object_t’ in ‘class openvrml::viewer’ does not name a type
arViewer.cpp:305:1: error: ‘object_t’ in ‘class openvrml::viewer’ does not name a type
make: *** [arViewer.o] Error 1

Considering that ARToolkit (without VRML support) is working well and OpenVRML is installed successfully, I can't figure out what is the problem here.

Arthur Alves
  • 458
  • 1
  • 5
  • 13
  • Use its fully qualified name by explicitly resolving its namespace with `operator ::`. –  May 17 '13 at 20:07
  • @H2CO3 Even using explicit namespace it gives me exactly the same errors. – Arthur Alves May 17 '13 at 20:27
  • Are you sure that object_t is defined in or before the definition of class openvrml::viewer? It seems that is lacking an include file somewhere, in which defines object_t – Amadeus May 17 '13 at 21:26
  • Yes @TomásBadan, "object_t" is defined on openvrml/gl/viewer.h, that is included in arViewer.h, that is included in arViewer.cpp. – Arthur Alves May 17 '13 at 23:00
  • 1
    So, what version of openvrml are you using, because, in the changlog of version 0.18.9, it states that: `Get rid of the last vestiges of openvrml::viewer::object_t` – Amadeus May 18 '13 at 00:52
  • From openvrml/gl/viewer.h (version > 0.17): `virtual void do_insert_box(const geometry_node & n, const vec3f & size);` From openvrml/gl/viewer.h (version 0.17* or less): `virtual object_t insert_box(const vec3f & size);` So, you're right, @TomásBadan. I'm removing the actual version to install the 0.15.10-9.2. Thank you! – Arthur Alves May 18 '13 at 08:29

0 Answers0