<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2016-02-01 18:18 GMT+03:00 Brian Paul <span dir="ltr"><<a href="mailto:brianp@vmware.com" target="_blank">brianp@vmware.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 02/01/2016 01:16 AM, Anton Zachesov wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello, everyone.<br>
<br>
My name is Anton, I'm working on a small application, which runs<br>
back-end pre-rendering for a webGL player. It uses software rendering<br>
implementation from libOsMesa and is intended to use only software<br>
rendering. It currently uses libMesa 10.2.7.<br>
<br>
Recently one part of this app has migrated to OpenGL 4.0, which require<br>
update to a newer version of libMesa. I picked 11.1.1, as it is claimed<br>
to have implementation of OpenGL 4.<br>
</blockquote>
<br></span>
Only for the Intel i965 driver at this time.<span class=""><br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I built libOsMesa library (from v11.1) with the following command:<br>
<br>
./configure --enable-osmesa --disable-driglx-direct --disable-dri<br>
--with-gallium-drivers=swrast --disable-egl<br>
<br>
The output libOsMesa.so library runs fine with the previous version of<br>
my app.<br>
However, when I try to link it with the newest version, I get undefined<br>
references to<br>
- glUniformSubroutinesuiv<br>
and<br>
- glGetSubroutineIndex<br>
which are used in the migrated part.<br>
<br>
My question is:<br>
Does the latest version of software rendering with libOsMesa supports<br>
this particular OpenGL functionality?<br>
</blockquote>
<br></span>
No.</blockquote><div><br></div><div>Ok, thank you for clarification. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
If so, how to build it correctly or correctly link with my application<br>
(it uses scons to build, if it is important. Any hints are appreciated)?<br>
If not, how to still use off-screen rendering from libOsMesa with<br>
support of OpenGL 4.0+?<br>
</blockquote>
<br></span>
It'll probably be quite a while before OpenGL 4.x is usable with OSMesa.  There are three possible software drivers that can be used with the OSMesa interface:<br>
<br>
1. swrast - the original software driver<br>
2. softpipe - gallium software driver<br>
3. llvmpipe - gallium LLVM-based software driver.<br>
<br>
I doubt 1 will ever support GL 3 or 4.<br>
2 and/or 3 will probably support GL 3/4 someday, but we're quite a ways away from it.<br></blockquote><div><br></div><div>I see. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Nowadays, off-screen rendering can be done with almost any OpenGL driver if you use framebuffer objects (or pbuffers).  Plus, you can get GPU acceleration, if present.<br>
<br>
Do your machines not have GPUs?</blockquote><div><br></div><div>No, and that's the reason of questions in the first place.</div><div>I will talk to people about upgrading the hardware units. Thank you for your time.</div><div><br></div><div>Best regards,</div><div>Anton.</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="HOEnZb"><font color="#888888"><br>
<br>
-Brian<br>
<br>
<br>
</font></span></blockquote></div><br></div></div>