﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
4173	System OpenSceneGraph not detected during configuration which disables 3D animation in OMEdit	ivan.lloro.boada@…	Martin Sjölund	"Test to detect presence of OpenSceneGraph library in OMEdit/configure.ac fails even when it is present in the Linux system. As a consequence, 3D animated simulations are disabled.

Relevant extract of OMEdit/config.log hereafter:
{{{
configure:4059: checking for osg/qt include order bugs (broken OSG version)
configure:4077: g++ -E  conftest.cpp
configure:4077: $? = 0
configure:4078: result: OK
configure:4089: checking for osg/qt broken OpenGL
configure:4107: g++ -o conftest  -std=c++11  -fPIC -I/usr/include/qt5 -I/usr/include/qt5/QtOpenGL  -Wl,-rpath-link,/home/ivan/TODO/PhD_Thesis/code/OpenModelica/gitOpenModelica/build/lib/x86_64-linux-gnu/omc conftest.cpp  >&5
/tmp/ccfsHKVW.o:(.qtversion[qt_version_tag]+0x0): undefined reference to `qt_version_tag'
collect2: error: ld returned 1 exit status
configure:4107: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""OMOptim""
| #define PACKAGE_TARNAME ""openmodelica""
| #define PACKAGE_VERSION ""dev""
| #define PACKAGE_STRING ""OMOptim dev""
| #define PACKAGE_BUGREPORT ""https://trac.openmodelica.org/OpenModelica""
| #define PACKAGE_URL ""https://openmodelica.org""
| /* end confdefs.h.  */
| 
| #include <osgViewer/GraphicsWindow>
| #include <QGLWidget>
| 
| int
| main ()
| {
| 
|   ;
|   return 0;
| }
configure:4111: result: no (giving up on OSG)
}}}

Disabling the following test in OMEdit/configure.ac solves the problem and compiles a fully functional OMEdit:

{{{
#if __arm__==1 && __clang_major__==3 && __clang_minor__==4 && OPENSCENEGRAPH_MAJOR_VERSION==3 && OPENSCENEGRAPH_MIN
OR_VERSION==2 && OPENSCENEGRAPH_PATCH_VERSION==0
#error ""ARM+clang 3.4+OSG3.2.0 does not work together""
#endif
]],
  [[]])],
  [AC_MSG_RESULT([OK])],
  [AC_MSG_RESULT([no (giving up on OSG)]); WITH_OSG=0]
  )
  CPPFLAGS=""$OLD_CPPFLAGS""
fi
if test ""$WITH_OSG"" = 1; then
  AC_MSG_CHECKING([for osg/qt broken OpenGL])
  OLD_CPPFLAGS=""$CPPFLAGS""
  CPPFLAGS=""$CPPFLAGS -fPIC -I$QT_INSTALL_HEADERS -I$QT_INSTALL_HEADERS/QtOpenGL""
  AC_LINK_IFELSE(
        [AC_LANG_PROGRAM([[
#include <osgViewer/GraphicsWindow>
#include <QGLWidget>
]],
  [[]])],
  [AC_MSG_RESULT([OK])],
  [AC_MSG_RESULT([no (giving up on OSG)]); WITH_OSG=1] <--- Test disabled by forcing WITH_OSG=1 instead of original WITH_OSG=0 (ugly hack)
  )
  CPPFLAGS=""$OLD_CPPFLAGS""
fi
}}}


The installed library versions are OpenSceneGraph 3.4.0 and Qt 5.6.1."	defect	closed	high	1.11.0	Build Environment	v1.11.0	fixed		
