[Mesa-dev] MSVC, MinGW build break

Rob Clark robdclark at gmail.com
Sat Oct 17 06:04:56 PDT 2015


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??

BR,
-R


More information about the mesa-dev mailing list