Known issue, please read this bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838792
Summation: OSG is being built with libGLESv2 and not with libGL on armhf, OpenMW doesn't support GLESv2, nor GLESv1. If we 'fix' the build issue, OpenMW will run, but you only see a black screen. OSG is compiled with libGLESv2 support because of the plugin osgQt.so which requires Qt. Qt is compiled with GLESv2 support instead of libGL on armhf. Short term solution: Have OSG build without Qt support thus disabling osgQt plugin, then remove the armhf hacks to support GLESv2. It will compile Long term solution: Qt on armhf needs to be built with libGL instead of libGLESv2. If necessary, please file a bug against OSG-3.4. Hopefully this won't be necessary as I've added Alberto to conversation who maintains OSG-3.4 For example, on OpenMW's launchpad, we have our own OSG-3.4 builds that use libGL instead of libGLESv2 on armhf and OpenMW works just fine on armhf. https://launchpad.net/~openmw/+archive/ubuntu/openmw/+packages https://launchpad.net/~openmw/+archive/ubuntu/openmw/+files/openscenegraph-3.4_3.4.0+dfsg1-4+openmw1~xenial1.debian.tar.xz I hope this helps. I guess this bug will stay open until either OSG-3.4 is updated (implying either removal of osgQt or update of Qt itself) or we remove OpenMW from armhf support. Cheers, Bret On Tue, Jan 3, 2017 at 10:29 AM, Andreas Beckmann <a...@debian.org> wrote: > Package: openmw > Version: 0.41.0-1 > Severity: serious > Justification: fails to build from source (but built successfully in the past) > > Hi, > > openmw FTBFS on armhf, but built there previously: > > https://buildd.debian.org/status/fetch.php?pkg=openmw&arch=armhf&ver=0.41.0-1&stamp=1482596646 > > [ 8%] Building CXX object > components/CMakeFiles/components.dir/sceneutil/lightmanager.cpp.o > cd /«PKGBUILDDIR»/build/components && /usr/bin/c++ > -DGLOBAL_CONFIG_PATH=\"/etc\" -DGLOBAL_DATA_PATH=\"/usr/share/games\" > -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_OPENGL_LIB > -DTIXML_USE_STL -D__STDC_CONSTANT_MACROS -I/«PKGBUILDDIR»/. -isystem > /usr/include/SDL2 -isystem /usr/include/MYGUI -isystem /usr/include/AL > -isystem /usr/include/bullet -isystem /usr/include/qt4 -isystem > /usr/include/qt4/QtOpenGL -isystem /usr/include/qt4/QtGui -isystem > /usr/include/qt4/QtNetwork -isystem /usr/include/qt4/QtCore > -I/«PKGBUILDDIR»/build/components -g -O2 -fdebug-prefix-map=/«PKGBUILDDIR»=. > -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time > -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wundef > -Wno-unused-parameter -std=c++98 -pedantic -Wno-long-long > -Wno-unused-but-set-parameter -O2 -g -DNDEBUG -o > CMakeFiles/components.dir/sceneutil/lightmanager.cpp.o -c > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp: In member function > 'void SceneUtil::LightStateAttribute::applyLight(GLenum, const osg::Light*) > const': > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:61:34: error: > 'GL_AMBIENT' was not declared in this scope > glLightfv( lightNum, GL_AMBIENT, > light->getAmbient().ptr() ); > ^~~~~~~~~~ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:61:86: error: > 'glLightfv' was not declared in this scope > glLightfv( lightNum, GL_AMBIENT, > light->getAmbient().ptr() ); > > ^ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:62:34: error: > 'GL_DIFFUSE' was not declared in this scope > glLightfv( lightNum, GL_DIFFUSE, > light->getDiffuse().ptr() ); > ^~~~~~~~~~ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:63:34: error: > 'GL_SPECULAR' was not declared in this scope > glLightfv( lightNum, GL_SPECULAR, > light->getSpecular().ptr() ); > ^~~~~~~~~~~ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:64:34: error: > 'GL_POSITION' was not declared in this scope > glLightfv( lightNum, GL_POSITION, > light->getPosition().ptr() ); > ^~~~~~~~~~~ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:70:34: error: > 'GL_CONSTANT_ATTENUATION' was not declared in this scope > glLightf ( lightNum, GL_CONSTANT_ATTENUATION, > light->getConstantAttenuation() ); > ^~~~~~~~~~~~~~~~~~~~~~~ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:70:92: error: 'glLightf' > was not declared in this scope > glLightf ( lightNum, GL_CONSTANT_ATTENUATION, > light->getConstantAttenuation() ); > > ^ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:71:34: error: > 'GL_LINEAR_ATTENUATION' was not declared in this scope > glLightf ( lightNum, GL_LINEAR_ATTENUATION, > light->getLinearAttenuation() ); > ^~~~~~~~~~~~~~~~~~~~~ > /«PKGBUILDDIR»/components/sceneutil/lightmanager.cpp:72:34: error: > 'GL_QUADRATIC_ATTENUATION' was not declared in this scope > glLightf ( lightNum, GL_QUADRATIC_ATTENUATION, > light->getQuadraticAttenuation() ); > ^~~~~~~~~~~~~~~~~~~~~~~~ > components/CMakeFiles/components.dir/build.make:769: recipe for target > 'components/CMakeFiles/components.dir/sceneutil/lightmanager.cpp.o' failed > make[3]: *** > [components/CMakeFiles/components.dir/sceneutil/lightmanager.cpp.o] Error 1 > > > Andreas