[Mesa-dev] Error Building Mesa 10.0.1 on Windows

Roland Scheidegger sroland at vmware.com
Tue Jan 14 11:32:57 PST 2014


This is correct. Note that on master this was introduced by commit
7e61b44dcd6175579f60d8ff2f703a6c83e33d27 (mesa: enable
GL_TEXTURE_LOD_BIAS set/get) and immediately fixed by the next commit
bba8f10598866776ae198b363b3752c2e3bbb126 (mesa: Use IROUND instead of
roundf). But only the first commit was cherry-picked to the 10.0 branch
likely because the second lacked the CC to stable.

Roland

Am 14.01.2014 19:51, schrieb Dorrington, Albert:
> A little further investigation, it looks like the correct solution is to
> replace the call to roundf() with IROUND() which is defined in
> src\mesa\main\imports.h
> 
>  
> 
> *From:*mesa-dev-bounces at lists.freedesktop.org
> [mailto:mesa-dev-bounces at lists.freedesktop.org] *On Behalf Of
> *Dorrington, Albert
> *Sent:* Tuesday, January 14, 2014 1:43 PM
> *To:* mesa-dev at lists.freedesktop.org
> *Subject:* EXTERNAL: [Mesa-dev] Error Building Mesa 10.0.1 on Windows
> 
>  
> 
> I’m attempting to build Mesa 10.0.1 on Windows (Win7, 64-bit) using the
> scons interface.
> 
>  
> 
> Currently getting the following error:
> 
> link /nologo /fixed:no /incremental:no /dll
> /out:build\windows-x86-debug\gallium\targets\libgl-gdi\opengl32.dll
> build\windows-x86-debug\gallium\state_
> 
> trackers\wgl\wgl.lib
> build\windows-x86-debug\gallium\winsys\sw\gdi\ws_gdi.lib
> build\windows-x86-debug\mapi\glapi\glapi.lib build\windows-x86-debug\mes
> 
> a\mesa.lib build\windows-x86-debug\gallium\drivers\softpipe\softpipe.lib
> build\windows-x86-debug\gallium\drivers\trace\trace.lib
> build\windows-x86-deb
> 
> ug\gallium\drivers\rbug\rbug.lib
> build\windows-x86-debug\gallium\auxiliary\gallium.lib
> build\windows-x86-debug\glsl\glsl.lib gdi32.lib user32.lib kern
> 
> el32.lib ws2_32.lib
> /PDB:build\windows-x86-debug\gallium\targets\libgl-gdi\opengl32.pdb
> /DEBUG build\windows-x86-debug\gallium\targets\libgl-gdi\libgl
> 
> _gdi.obj /def:src\gallium\state_trackers\wgl\opengl32.def
> 
>   Creating library
> build\windows-x86-debug\gallium\targets\libgl-gdi\opengl32.lib and
> object build\windows-x86-debug\gallium\targets\libgl-gdi\opengl
> 
> 32.exp
> 
> mesa.lib(texparam.obj) : error LNK2019: unresolved external symbol
> _roundf referenced in function __mesa_GetTexParameteriv at 12
> 
> build\windows-x86-debug\gallium\targets\libgl-gdi\opengl32.dll : fatal
> error LNK1120: 1 unresolved externals
> 
> scons: ***
> [build\windows-x86-debug\gallium\targets\libgl-gdi\opengl32.dll] Error 1120
> 
> scons: building terminated because of errors.
> 
>  
> 
> It seems that on Windows, there is no roundf() defined in the math
> libraries.
> 
> I see that there is a roundf() defined in
> src\gallium\auxiliary\util\u_math.h, but I don’t see any equivalent
> utility library in the src\mesa section of code.
> 
>  
> 
> If I include the following code at the top of src\mesa\main\texparam.c,
> the code compiles on Windows, but I don’t think this is necessarily the
> right solution.
> 
>  
> 
> static INLINE float
> 
> roundf(float x)
> 
> {
> 
>   return x > 0.0f ? floorf( x + 0.5f ) : ceilf( x – 0.5f );
> 
> }
> 
>  
> 
> 
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://urldefense.proofpoint.com/v1/url?u=http://lists.freedesktop.org/mailman/listinfo/mesa-dev&k=oIvRg1%2BdGAgOoM1BIlLLqw%3D%3D%0A&r=F4msKE2WxRzA%2BwN%2B25muztFm5TSPwE8HKJfWfR2NgfY%3D%0A&m=CnywXmJzFnjKzYT%2BAtaYXJPj8VGZVHPlISbPdLHcTjE%3D%0A&s=640613901026045639975ac1bc63abdcd45f41b2b4ce96d2c871e606f848afb0
> 


More information about the mesa-dev mailing list