<html><head></head><body><div class="ydp1505333byahoo-style-wrap" style="font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 13px;"><div></div>
<div>Well, all this started in that Github issue thread. That guy <font face="times new roman, new york, times, serif">@<font size="2" face="Helvetica Neue, Helvetica, Arial, sans-serif"><span>elkhalafy was using llvmpipe to get Blender 2.80 to work on his system with unsupported (too old) iGPU. I don't know what he did but it resulted in Blender failing with missing libglapi.dll. So I researched about how to build it and it led me to this build variable gles of type boolean. When set to true it builds glapi as a shared library named libglapi.dll. It is also a requirement to build libGLESv1_CM.dll and libGLESv2.dll which only get build when selecting all build targets or probably I wasn't able to find the right target(s). <br></span></font></font></div><div><font face="times new roman, new york, times, serif"><font size="2" face="Helvetica Neue, Helvetica, Arial, sans-serif"><span><br></span></font></font></div><div><font face="times new roman, new york, times, serif"><font size="2" face="Helvetica Neue, Helvetica, Arial, sans-serif"><span>A Meson build approximation is -Dgles1=true -Dgles2=true which builds all 3 DLLs and it is default unlike in Scons case,</span></font><span></span></font><br></div><div><br></div>
</div><div id="yahoo_quoted_0389569559" class="yahoo_quoted">
<div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
<div>
On Thursday, October 18, 2018, 3:08:11 PM GMT+3, Jose Fonseca <jfonseca@vmware.com> wrote:
</div>
<div><br></div>
<div><br></div>
<div><div dir="ltr">I don't know what gles=y entails anymore, but if it's broken we should <br clear="none">simply remove it.<br clear="none"><br clear="none">That said, our WGL GLES contexts, via WGL_EXT_create_context_es2_profile <br clear="none">extension, even without gles=y option.<br clear="none"><br clear="none">So what exactly are you looking for here?<br clear="none"><br clear="none">Jose<br clear="none"><br clear="none">On 18/10/18 13:02, Liviu Prodea wrote:<br clear="none">> scons build=release platform=windows machine=x86 gles=y libgl-gdi osmesa<br clear="none">> <br clear="none">> Creating library build\windows-x86\mesa\drivers\osmesa\osmesa.lib and <br clear="none">> object build\windows-x86\mesa\drivers\osmesa\osmesa.exp<br clear="none">> osmesa.obj : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_check_multithread<br clear="none">> osmesa.obj : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_get_proc_address<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_set_context<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_set_dispatch<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_set_nop_handler<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_new_nop_table<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_Context<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_get_dispatch_table_size<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_get_context<br clear="none">> mesa.lib(remap.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_add_dispatch<br clear="none">> mesa.lib(api_loopback.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_get_dispatch<br clear="none">> mesa.lib(api_loopback.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_Dispatch<br clear="none">> build\windows-x86\mesa\drivers\osmesa\osmesa.dll : fatal error LNK1120: <br clear="none">> 12 unresolved externals<br clear="none">> scons: *** [build\windows-x86\mesa\drivers\osmesa\osmesa.dll] Error 1120<br clear="none">> st_osmesa.lib(osmesa.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_get_proc_address<br clear="none">> mesa.lib(st_manager.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_check_multithread<br clear="none">> mesa.lib(vbo_exec_api.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_set_dispatch<br clear="none">> mesa.lib(glthread.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_set_context<br clear="none">> mesa.lib(context.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_get_dispatch_table_size<br clear="none">> mesa.lib(remap.obj) : error LNK2001: unresolved external symbol <br clear="none">> __imp___glapi_add_dispatch<br clear="none">> build\windows-x86\gallium\targets\osmesa\osmesa.dll : fatal error <br clear="none">> LNK1120: 6 unresolved externals<br clear="none">> scons: *** [build\windows-x86\gallium\targets\osmesa\osmesa.dll] Error 1120<br clear="none">> scons: building terminated because of errors.<br clear="none">> <br clear="none">> This is a long standing issue. First reported here:<br clear="none">> <br clear="none">> <a shape="rect" href="https://lists.freedesktop.org/archives/mesa-users/2012-May/000431.html " target="_blank">https://lists.freedesktop.org/archives/mesa-users/2012-May/000431.html </a><br clear="none">> <<a shape="rect" href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Farchives%2Fmesa-users%2F2012-May%2F000431.html&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623099529&sdata=%2BVbAVSllQsctFyx%2FaDxlLT3r4bxUNU1Ee%2BC%2FpV6A65A%3D&reserved=0" target="_blank">https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Farchives%2Fmesa-users%2F2012-May%2F000431.html&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623099529&sdata=%2BVbAVSllQsctFyx%2FaDxlLT3r4bxUNU1Ee%2BC%2FpV6A65A%3D&reserved=0</a>><br clear="none">> <br clear="none">> Encountered again in 2016:<br clear="none">> <br clear="none">> <a shape="rect" href="https://lists.freedesktop.org/archives/mesa-users/2016-March/001142.html " target="_blank">https://lists.freedesktop.org/archives/mesa-users/2016-March/001142.html </a><br clear="none">> <<a shape="rect" href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Farchives%2Fmesa-users%2F2016-March%2F001142.html&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623099529&sdata=F0LF4N3y9Z4WkpESF816hPBeFgisVhYmKqSOI57hZDo%3D&reserved=0" target="_blank">https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Farchives%2Fmesa-users%2F2016-March%2F001142.html&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623099529&sdata=F0LF4N3y9Z4WkpESF816hPBeFgisVhYmKqSOI57hZDo%3D&reserved=0</a>><br clear="none">> <br clear="none">> and finally by myself in early 2018:<br clear="none">> <br clear="none">> <a shape="rect" href="https://bugs.freedesktop.org/show_bug.cgi?id=106843 " target="_blank">https://bugs.freedesktop.org/show_bug.cgi?id=106843 </a><br clear="none">> <<a shape="rect" href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.freedesktop.org%2Fshow_bug.cgi%3Fid%3D106843&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623109534&sdata=%2BaoNGi49NqOqTduaS9GUh69nV8hxWI7bLp%2F7ikcAk2M%3D&reserved=0" target="_blank">https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugs.freedesktop.org%2Fshow_bug.cgi%3Fid%3D106843&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623109534&sdata=%2BaoNGi49NqOqTduaS9GUh69nV8hxWI7bLp%2F7ikcAk2M%3D&reserved=0</a>><br clear="none">> <br clear="none">> Eric Engestrom suggested me to try the work in progress Meson build for <br clear="none">> Windows. Unfortunately it has other issues which prevents it from being <br clear="none">> ready for prime time as I reported here:<br clear="none">> <br clear="none">> <a shape="rect" href="https://gitlab.freedesktop.org/dbaker/mesa/issues/2 " target="_blank">https://gitlab.freedesktop.org/dbaker/mesa/issues/2 </a><br clear="none">> <<a shape="rect" href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.freedesktop.org%2Fdbaker%2Fmesa%2Fissues%2F2&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623109534&sdata=vfn2nFWXV4dcKX7jwJRM721sV40Mu6YWb64MvG7%2BBms%3D&reserved=0" target="_blank">https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.freedesktop.org%2Fdbaker%2Fmesa%2Fissues%2F2&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623109534&sdata=vfn2nFWXV4dcKX7jwJRM721sV40Mu6YWb64MvG7%2BBms%3D&reserved=0</a>><br clear="none">> <br clear="none">> I stumbled upon this issue when dealing with this feature request:<br clear="none">> <br clear="none">> <a shape="rect" href="https://github.com/pal1000/mesa-dist-win/issues/8 " target="_blank">https://github.com/pal1000/mesa-dist-win/issues/8 </a><br clear="none">> <<a shape="rect" href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fpal1000%2Fmesa-dist-win%2Fissues%2F8&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623119539&sdata=NgWDQFRSrOAkp%2Baut%2FCQDeQJX2lxIm5%2FiaOxPdiOed8%3D&reserved=0" target="_blank">https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fpal1000%2Fmesa-dist-win%2Fissues%2F8&data=02%7C01%7Cjfonseca%40vmware.com%7C6abda784079c42d71b3408d634f19a8a%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636754609623119539&sdata=NgWDQFRSrOAkp%2Baut%2FCQDeQJX2lxIm5%2FiaOxPdiOed8%3D&reserved=0</a>><div class="yqt6210111899" id="yqtfd28320"><br clear="none">> <br clear="none">> I was able to get that feature done but with a terribly ugly hack which <br clear="none">> should not even be mentioned.<br clear="none">> <br clear="none">> This issue affects the linking between osmesa and shared_glapi so the <br clear="none">> build command that triggers it can be as short as:<br clear="none">> <br clear="none">> scons gles=y<br clear="none">> <br clear="none">> or<br clear="none">> <br clear="none">> scons gles=y osmesa<br clear="none">> <br clear="none">> to get to the linking failure as quickly as possible stripping targets <br clear="none">> that build successfully.<br clear="none">> <br clear="none">> I tried to make a proper fix but it is beyond my skill level, despite <br clear="none">> having the gut feeling the fix could be something surprisingly simple.<br clear="none">> <br clear="none"><br clear="none"></div></div></div>
</div>
</div></body></html>