[Mesa-dev] MSVC, MinGW build break

Brian Paul brianp at vmware.com
Sat Oct 17 09:36:28 PDT 2015


On 10/17/2015 10:07 AM, Brian Paul wrote:
> On 10/17/2015 07:04 AM, Rob Clark wrote:
>> On Fri, Oct 16, 2015 at 11:11 PM, Brian Paul <brianp at vmware.com> wrote:
>>> Hi Rob,
>>>
>>> Your recent commit "nir: remove dependency on glsl" broke the build
>>> for MSVC
>>> and MinGW.
>>>
>>> For MSVC:
>>>
>>> [...]
>>>    Linking
>>> build\windows-x86-debug\gallium\tests\graw\occlusion-query.exe ...
>>>    Linking build\windows-x86-debug\gallium\tests\graw\quad-sample.exe
>>> ...
>>> glsl.lib(loop_controls.obj) : error LNK2001: unresolved external symbol
>>> "public: static struct glsl_type const * const glsl_type::bool_type"
>>> (?bool_type at glsl_type@@2QBU1 at B)
>>> glsl.lib(lower_discard_flow.obj) : error LNK2001: unresolved external
>>> symbol
>>> "public: static struct glsl_type const * const glsl_type::bool_type"
>>> (?bool_type at glsl_type@@2QBU1 at B)
>>> [...]
>>> glsl.lib(builtin_functions.obj) : error LNK2001: unresolved external
>>> symbol
>>> "public: static struct glsl_type const * const glsl_type::float_type"
>>> (?float_type at glsl_type@@2QBU1 at B)
>>> [...]
>>> mesa.lib(ff_fragment_shader.obj) : error LNK2001: unresolved external
>>> symbol
>>> "public: static struct glsl_type const * const
>>> glsl_type::sampler2DShadow_type"
>>> (?sampler2DShadow_type at glsl_type@@2QBU1 at B)
>>> [etc. for hundreds more]
>>>
>>>
>>>
>>> For MinGW:
>>> [...]
>>>    Linking build/windows-x86-debug/gallium/tests/graw/fs-write-z.exe ...
>>>    Linking build/windows-x86-debug/gallium/targets/osmesa/osmesa.dll ...
>>>    Linking
>>> build/windows-x86-debug/gallium/targets/libgl-gdi/opengl32.dll ...
>>> build/windows-x86-debug/mesa/libmesa.a(ir_to_mesa.o): In function
>>> `reladdr_to_temp':
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:793:
>>>
>>> undefined reference to `glsl_type::vec4_type'
>>> build/windows-x86-debug/mesa/libmesa.a(ir_to_mesa.o): In function
>>> `visit':
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:1092:
>>>
>>> undefined reference to `glsl_type::vec4_type'
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:1115:
>>>
>>> undefined reference to `glsl_type::vec4_type'
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:1487:
>>>
>>> undefined reference to `glsl_type::float_type'
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:1497:
>>>
>>> undefined reference to `glsl_type::float_type'
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:1871:
>>>
>>> undefined reference to `glsl_type::vec4_type'
>>> /var/lib/hudson/jobs/mesa-mingw/workspace/src/mesa/program/ir_to_mesa.cpp:1883:
>>>
>>> undefined reference to `glsl_type::vec4_type'
>>>
>>>
>>> Hopefully it's something simple to fix.
>>
>> these types should all be coming from glsl_types.cpp which moved into
>> NIR..
>>
>> I've no idea about MSVC or MinGW builds.. (I did at least fix up the
>> scons build, although in not a very pretty way..).  I guess the best
>> thing I could suggest is to:
>>
>>    git show -M b9b40ef9b7644ea24768bc8b7464b1719efe99bf
>>
>> and make equivalent changes in whatever build files MSVC/MinGW uses??
>
> Yeah, that's what I did.

Actually, I'm kind of hoping we can find a cleaner fix for scons.  Maybe 
Jose can take a look when he has time.

-Brian




More information about the mesa-dev mailing list