Im trying to build this software called OpendTect from sources on Ubunto 14.04 LTS. the software dependencies are OSG and QT which I have installed without any problem. I have run cmake . which worked fine. however when I try to run make. I get the below as my very first error :
Building CXX object external/osgGeo/src/osgGeo/CMakeFiles/osgGeo.dir/Draggers.cpp.o
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp: In member function ‘virtual void osgGeo::Translate1DDragger::traverse(osg::NodeVisitor&)’:
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:50:37: error: ‘class osg::ref_ptr<osgGA::Event>’ has no member named ‘asGUIEventAdapter’
osgGA::GUIEventAdapter* ea = itr->asGUIEventAdapter();
^
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp: In member function ‘virtual void osgGeo::Translate2DDragger::traverse(osg::NodeVisitor&)’:
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:122:37: error: ‘class osg::ref_ptr<osgGA::Event>’ has no member named ‘asGUIEventAdapter’
> osgGA::GUIEventAdapter* ea = itr->asGUIEventAdapter();
How do I solve this? I have double checked that all files are present. Also this error dint turn up on two other systems.
Files containing code can be found here : https://github.com/OpendTect
Link to folder containing files causing the above error : https://github.com/OpendTect/osgGeo/tree/master/src
I downloaded, compiled and installed OSG 3.2.0 (instead of the 3.5.0 which caused me the same error) to solve the error.
This is because OpendTect, which is in 5.0, expects 3.2 (if you look into Draggers.cpp, you see there is a switch that determines if less than 3.3 or more than 3.3).