Error compiling Paraview with off-screen rendering with Mesa

233 views Asked by At

I'm trying compile paraview-4.4 on OpenSuse to run as a server with off-screen rendering support. As I don't have graphics hardware therefore I want to use Mesa for graphics.

I followed instructions on this page.

to use Mesa-7.7 I configure Mesa with,

./configure --with-driver=xlib --enable-osmesa --prefix={MESA_INSTALL_PREFIX}

After compiling mesa I tried to compile Paraview but getting following error,

[ 11%] Linking CXX shared library ../../../lib/libvtkftgl-pv4.4.so
CMakeFiles/vtkftgl.dir/src/FTBitmapGlyphRenderOpenGL.cpp.o: In function `ftgl::FTBitmapGlyph::RenderOpenGL(FT_Vector_ const&, FTGLRenderContext const*)':
FTBitmapGlyphRenderOpenGL.cpp:(.text+0x33): undefined reference to `glBitmap'
FTBitmapGlyphRenderOpenGL.cpp:(.text+0x4e): undefined reference to `glBitmap'
FTBitmapGlyphRenderOpenGL.cpp:(.text+0x84): undefined reference to `glBitmap'
CMakeFiles/vtkftgl.dir/src/FTGLBitmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLBitmapFont::RenderOpenGL(wchar_t const*, FTGLRenderContext const*)':
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x22): undefined reference to `glPushClientAttrib'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x2c): undefined reference to `glPushAttrib'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x38): undefined reference to `glPixelStorei'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x44): undefined reference to `glPixelStorei'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x53): undefined reference to `glPixelStorei'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x5d): undefined reference to `glDisable'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x70): undefined reference to `glPopAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLBitmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLBitmapFont::RenderOpenGL(char const*, FTGLRenderContext const*)':
FTGLBitmapFontRenderOpenGL.cpp:(.text+0xb2): undefined reference to `glPushClientAttrib'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0xbc): undefined reference to `glPushAttrib'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0xc8): undefined reference to `glPixelStorei'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0xd4): undefined reference to `glPixelStorei'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0xe3): undefined reference to `glPixelStorei'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0xed): undefined reference to `glDisable'
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x100): undefined reference to `glPopAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLBitmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLBitmapFont::RenderOpenGL(wchar_t const*, FTGLRenderContext const*)':
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x87): undefined reference to `glPopClientAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLBitmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLBitmapFont::RenderOpenGL(char const*, FTGLRenderContext const*)':
FTGLBitmapFontRenderOpenGL.cpp:(.text+0x117): undefined reference to `glPopClientAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLPixmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLPixmapFont::RenderOpenGL(wchar_t const*, FTGLRenderContext const*)':
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x22): undefined reference to `glPushClientAttrib'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x2c): undefined reference to `glPushAttrib'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x38): undefined reference to `glPixelStorei'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x42): undefined reference to `glEnable'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x51): undefined reference to `glBlendFunc'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x5b): undefined reference to `glDisable'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x6e): undefined reference to `glPopAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLPixmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLPixmapFont::RenderOpenGL(char const*, FTGLRenderContext const*)':
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xb2): undefined reference to `glPushClientAttrib'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xbc): undefined reference to `glPushAttrib'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xc8): undefined reference to `glPixelStorei'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xd2): undefined reference to `glEnable'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xe1): undefined reference to `glBlendFunc'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xeb): undefined reference to `glDisable'
FTGLPixmapFontRenderOpenGL.cpp:(.text+0xfe): undefined reference to `glPopAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLPixmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLPixmapFont::RenderOpenGL(wchar_t const*, FTGLRenderContext const*)':
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x85): undefined reference to `glPopClientAttrib'
CMakeFiles/vtkftgl.dir/src/FTGLPixmapFontRenderOpenGL.cpp.o: In function `ftgl::FTGLPixmapFont::RenderOpenGL(char const*, FTGLRenderContext const*)':
FTGLPixmapFontRenderOpenGL.cpp:(.text+0x115): undefined reference to `glPopClientAttrib'
CMakeFiles/vtkftgl.dir/src/FTPixmapGlyphRenderOpenGL.cpp.o: In function `ftgl::FTPixmapGlyph::RenderOpenGL(FT_Vector_ const&, FTGLRenderContext const*)':
FTPixmapGlyphRenderOpenGL.cpp:(.text+0x33): undefined reference to `glBitmap'
FTPixmapGlyphRenderOpenGL.cpp:(.text+0x4c): undefined reference to `glDrawPixels'
FTPixmapGlyphRenderOpenGL.cpp:(.text+0x82): undefined reference to `glBitmap'
CMakeFiles/vtkftgl.dir/src/FTPixmapGlyphRenderOpenGL.cpp.o: In function `ftgl::FTPixmapGlyph::GetCurrentColorOpenGL(float*, FTGLRenderContext const*)':
FTPixmapGlyphRenderOpenGL.cpp:(.text+0x96): undefined reference to `glGetFloatv'
collect2: ld returned 1 exit status
make[2]: *** [lib/libvtkftgl-pv4.4.so.1] Error 1
make[1]: *** [VTK/ThirdParty/ftgl/CMakeFiles/vtkftgl.dir/all] Error 2
make: *** [all] Error 2

Could you help me fix this issue?

1

There are 1 answers

0
user2123079 On

Check whether you link OpenGL library. Check also library link order.