C++ 尝试在源代码上运行make时出错

C++ 尝试在源代码上运行make时出错,c++,makefile,C++,Makefile,我试图从UBTO 14.04 LTS上的源代码中构建这个名为OpendTect的软件。软件依赖项是OSG和QT,我安装它们没有任何问题。 我已经运行了cmake。效果很好。 然而,当我试着跑的时候,我会做。以下是我的第一个错误: Building CXX object external/osgGeo/src/osgGeo/CMakeFiles/osgGeo.dir/Draggers.cpp.o /home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:

我试图从UBTO 14.04 LTS上的源代码中构建这个名为OpendTect的软件。软件依赖项是OSG和QT,我安装它们没有任何问题。 我已经运行了cmake。效果很好。 然而,当我试着跑的时候,我会做。以下是我的第一个错误:

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(); 
构建CXX对象外部/osgGeo/src/osgGeo/CMakeFiles/osgGeo.dir/Draggers.cpp.o
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:在成员函数“virtualvoid osgGeo::Translate1DDragger::traverse(osg::NodeVisitor&)”中:
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:50:37:错误:“类osg::ref_ptr”没有名为“asGUIEventAdapter”的成员
osgGA::GUIEventAdapter*ea=itr->asGUIEventAdapter();
^
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:在成员函数“virtualvoid osgGeo::Translate2DDragger::traverse(osg::NodeVisitor&)”中:
/home/odn/external/osgGeo/src/osgGeo/Draggers.cpp:122:37:错误:“类osg::ref_ptr”没有名为“asGUIEventAdapter”的成员
>osgGA::GUIEventAdapter*ea=itr->asGUIEventAdapter();
我如何解决这个问题?我仔细检查了所有文件是否都存在。另外两个系统上也出现了这种错误力

包含代码的文件可在此处找到:


链接到包含导致上述错误的文件的文件夹:

我下载、编译并安装了(而不是导致相同错误的3.5.0)以解决此错误


这是因为5.0版本的OpendTect要求3.2版本(如果你查看Draggers.cpp,你会发现有一个开关决定是小于3.3还是大于3.3)。

其他两个系统是否有相同版本的osg?是的。两个系统的版本相同。