You are not logged in.

#1 2017-11-16 10:54:58

nicmus
Member
Registered: 2017-11-16
Posts: 5

mesa, libOSMesa and Octave

Hi I have a library version problem. In octave (last version available in pacman) I need to do some off screen rendering which requires libOSMesa >= 9.0

specifically the error I get in octave is

   error: __osmesa_print__: Depth and stencil doesn't match, are you sure you are using OSMesa >= 9.0?

I checked which library version is installed and it appears the 8.0 is there

> ls /usr/lib/libOSMesa* -1
/usr/lib/libOSMesa.so
/usr/lib/libOSMesa.so.8
/usr/lib/libOSMesa.so.8.0.0

and

> pacman -Qo /usr/lib/libOSMesa.so
/usr/lib/libOSMesa.so is owned by mesa 17.2.5-1

According to
   https://www.mesa3d.org/osmesa.html
the option --enable-osmesa is required while configuring the pkgs which I see it is not done in
   https://git.archlinux.org/svntogit/pack … kages/mesa

could someone help me in installing a modified pacman pkg with that option and use it to replace the currently installed version?

Offline

#2 2017-11-17 13:43:11

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,911

Re: mesa, libOSMesa and Octave

mesa PKGBUILD wrote:

    --enable-gallium-osmesa \

even mesa-git is at libOSMesa.so.8.0.0 , maybe classic OSMesa (which is what's build when using --enable-osmesa ) has a different version scheme ?
Either way, this sounds like an upstream bug that needs to be reported to Octave developers.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2017-11-17 14:25:06

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 11,842
Website

Re: mesa, libOSMesa and Octave

Looks like the problem stems from http://octave.org/doxygen/4.0/d3/dd1/__ … ource.html (line #153 onwards)

In /usr/include/GL/gl.h:
GL_DEPTH_BITS is defined as 0x0D56
GL_STENCIL_BITS is defined as 0x0D57

But according to /usr/include/GL/osmesa.h (which includes GL/gl.h), OSMESA is at version 11.2.0, so probably isn't susceptable to the bug this check is meant to protect against.

I would second the Octave bug conclusion. You could try adding an extra check around the offending octave code to see if OSMESA_MAJOR_VERSION < 10 before it checks the GL BITS, then recompile octave and see if you still have problems.


Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

#4 2017-11-17 21:51:45

nicmus
Member
Registered: 2017-11-16
Posts: 5

Re: mesa, libOSMesa and Octave

Yeah it appears definitely as an octave old check which should no longer take place.
I will file a bug report to the developers. Thank you for your help.

Offline

#5 2018-02-02 19:28:04

mtmiller
Member
From: Portland, OR, US
Registered: 2018-02-02
Posts: 5
Website

Re: mesa, libOSMesa and Octave

The solution you got was to run octave with LD_PRELOAD=/usr/lib/libGLX_mesa.so in your environment.

The check in octave isn't obsolete, but the error message isn't entirely accurate anymore. In your case it is failing because of libglvnd, not because of an old osmesa.

If this is working for you you should mark this thread as [SOLVED].

Offline

Board footer

Powered by FluxBB