[Mesa-dev] [PATCH 2/4] glapi: Fix build break in 'make check' on non-shared-glapi builds

Dieter Nützel Dieter at nuetzel-hh.de
Thu Apr 3 17:31:41 PDT 2014


Am 03.04.2014 22:53, schrieb Ian Romanick:
> On 04/03/2014 07:35 AM, Dieter Nützel wrote:
>> Am 03.04.2014 04:16, schrieb Ian Romanick:
>>> On 04/02/2014 06:13 PM, Dieter Nützel wrote:
>>>> Am 03.04.2014 01:19, schrieb Ian Romanick:
>>>>> On 04/02/2014 03:43 PM, Dieter Nützel wrote:
>>>>>> Am 02.04.2014 08:12, schrieb Timothy Arceri:
>>>>>>> On Wed, 2014-04-02 at 00:56 +0200, Dieter Nützel wrote:
>>>>>>>> Hello Ian, hello Timothy,
>>>>>>>> 
>>>>>>>> does this fix the regression introduced with commit fb78fa58?
>>>>>>>> 
>>>>>>>> [Mesa-dev] Mesa git (r600g): OpenGL Error(GL_INVALID_OPERATION):
>>>>>>>> initTexture2D (bisected)
>>>>>>>> http://lists.freedesktop.org/archives/mesa-dev/2014-March/056165.html
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Thanks,
>>>>>>>>    Dieter
>>>>>>> 
>>>>>>> Hi Dieter,
>>>>>>> 
>>>>>>> I just ran ./build/Release/gl-320-primitive-sprite on Mesa
>>>>>>> 10.2.0-devel
>>>>>>> (git-76ba50a) on Intel graphics and it ran fine with no error.
>>>>>>> Have you
>>>>>>> tried running it again with the latest code from git?
>>>>>>> Tim
>>>>>> 
>>>>>> Hello Tim,
>>>>>> 
>>>>>> thank you very much for your direct reply!
>>>>>> I've retested it with Mesa git daily on my _32bit_ system.
>>>>>> All with same result.
>>>>>> I even recompiled ogl-samples after recheckout several times NO 
>>>>>> go.
>>>>>> Last try last night 8-(
>>>>>> 
>>>>>> But,
>>>>>> 
>>>>>> ...argh,
>>>>>> after your request I've cloned ogl-samples this evening again and
>>>>>> can't
>>>>>> compile it anylonger. Someone changed the code to compile on 64 
>>>>>> bit
>>>>>> system only now, I think:
>>>>>> 
>>>>>> [ 13%] Building CXX object
>>>>>> framework/CMakeFiles/framework.dir/compiler.cpp.o
>>>>>> Linking CXX static library libframework.a
>>>>>> [ 13%] Built target framework
>>>>>> Scanning dependencies of target es-200-draw-elements
>>>>>> [ 13%] Building CXX object
>>>>>> tests/CMakeFiles/es-200-draw-elements.dir/es-200-draw-elements.cpp.o
>>>>>> Linking CXX executable ../build/Release/es-200-draw-elements
>>>>>> /usr/lib/gcc/i586-suse-linux/4.8/../../../../i586-suse-linux/bin/ld:
>>>>>> skipping incompatible
>>>>>> /opt/ogl-samples/external/FreeImage-3.15.4/linux64/libfreeimage.a 
>>>>>> when
>>>>>> searching for -lfreeimage
>>>>> 
>>>>> He's shipping a prebuilt .a???  Madness!  Is there source code for
>>>>> FreeImage included?  Can you just build a 32-bit version?  It seems
>>>>> like
>>>>> he has a crazy build system...
>>>> 
>>>> Thank you guys for your patience...
>>>> 
>>>>>> I'll try to go back some days in ogl-samples repository and try to 
>>>>>> get
>>>>>> it running (with Mesa 10.1.0), again as starting point.
>>>> 
>>>> Due to
>>>> git clone -b 4.4.0 https://github.com/g-truc/ogl-samples
>>>> I'm back to ogl-samples 4.4.0 (without FreeImage-3.15.4)
>>>> and set, now.
>>>> 
>>>> Mesa 10.1.0: OK
>>>> 
>>>> /opt/ogl-samples> glxinfo | grep OpenGL
>>>> libGL error: dlopen /usr/lib/dri/updates/r600_dri.so failed
>>>> (/usr/lib/dri/updates/r600_dri.so: cannot open shared object file: 
>>>> No
>>>> such file or directory)
>>>> OpenGL vendor string: X.Org
>>>> OpenGL renderer string: Gallium 0.4 on AMD RV730
>>>> OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.1.0
>>>> OpenGL core profile shading language version string: 3.30
>>>> OpenGL core profile context flags: (none)
>>>> OpenGL core profile profile mask: core profile
>>>> OpenGL core profile extensions:
>>>> OpenGL version string: 3.0 Mesa 10.1.0
>>>> OpenGL shading language version string: 1.30
>>>> OpenGL context flags: (none)
>>>> OpenGL extensions:
>>>> 
>>>> /opt/ogl-samples> ./build/release/gl-320-primitive-sprite
>>>> libGL error: dlopen /usr/lib/dri/updates/r600_dri.so failed
>>>> (/usr/lib/dri/updates/r600_dri.so: cannot open shared object file: 
>>>> No
>>>> such file or directory)
>>>> OpenGL Version Needed 3.2 ( 3.3 Found )
>>>> Compiling shader
>>>> gl-320/primitive-sprite.vert...
>>>> 
>>>> Compiling shader
>>>> gl-320/primitive-sprite.frag...
>>>> 
>>>> Linking program
>>>> 
>>>> Running Test
>>>> Test Ended
>>>> Test Began Correctly.
>>>> 
>>>> 
>>>> Mesa 10.2.0-devel (git-d120506): BAD
>>>> 
>>>> /opt/ogl-samples> glxinfo | grep OpenGL
>>>> OpenGL vendor string: X.Org
>>>> OpenGL renderer string: Gallium 0.4 on AMD RV730
>>>> OpenGL core profile version string: 3.3 (Core Profile) Mesa 
>>>> 10.2.0-devel
>>>> (git-d120506)
>>>> OpenGL core profile shading language version string: 3.30
>>>> OpenGL core profile context flags: (none)
>>>> OpenGL core profile profile mask: core profile
>>>> OpenGL core profile extensions:
>>>> OpenGL version string: 3.0 Mesa 10.2.0-devel (git-d120506)
>>>> OpenGL shading language version string: 1.30
>>>> OpenGL context flags: (none)
>>>> OpenGL extensions:
>>>> 
>>>> /opt/ogl-samples> ./build/release/gl-320-primitive-sprite
>>>> OpenGL Version Needed 3.2 ( 3.3 Found )
>>>> OpenGL Error(GL_INVALID_OPERATION): initTexture2D
>>> 
>>> I'm guessing that initTexture2D is in the application.  Can you set a
>>> breakpoint at _mesa_error to see where exactly Mesa is throwing
>>> GL_INVALID_OPERATION.  That should shed some light on things.
>> 
>> Ian,
>> 
>> can you please guide me a bit.
>> running
>> gdb ./build/release/gl-320-primitive-sprite
>> and
>> (gdb) break _mesa_error
>> Function "_mesa_error" not defined.
>> Make breakpoint pending on future shared library load? (y or [n]) y
>> 
>> Breakpoint 1 (_mesa_error) pending.
>> 
>> Do not do the trick.
> 
> But you still get the error from the application?  Eh... I'm at a loss,
> then.  _mesa_error is *the* function in Mesa that sets GL errors.
> MESA_DEBUG=verbose give any output?  Failing that... valgrind?

Does this help?
setenv MESA_DEBUG verbose (tcsh ;-)

Mesa 10.2.0-devel (git-c6050ce)
/opt/ogl-samples> ./build/release/gl-320-primitive-sprite
Mesa warning: failed to remap glDebugMessageCallbackARB
Mesa warning: failed to remap glDebugMessageControlARB
Mesa warning: failed to remap glDebugMessageInsertARB
Mesa warning: failed to remap glGetDebugMessageLogARB
Mesa: User error: GL_INVALID_ENUM in glGetString(GL_EXTENSIONS)
OpenGL Version Needed 3.2 ( 3.3 Found )
Mesa: User error: GL_INVALID_OPERATION in unsupported function called 
(unsupported extension or deprecated function?)
OpenGL Error(GL_INVALID_OPERATION): initTexture2D
Running Test
Test Ended

Mesa 10.1.0
/opt/ogl-samples> ./build/release/gl-320-primitive-sprite
libGL error: dlopen /usr/lib/dri/updates/r600_dri.so failed 
(/usr/lib/dri/updates/r600_dri.so: cannot open shared object file: No 
such file or directory)
Mesa: User error: GL_INVALID_ENUM in glGetString(GL_EXTENSIONS)
OpenGL Version Needed 3.2 ( 3.3 Found )
Compiling shader
gl-320/primitive-sprite.vert...

Compiling shader
gl-320/primitive-sprite.frag...

Linking program

Running Test
Test Ended
Test Began Correctly.

>>>> Running Test
>>>> Test Ended
>>>> 
>>>> Any ideas?
>>>> 
>>>> BTW
>>>> gl-320-primitive-shading
>>>> sigfault with Mesa 10.1.0
>>>> and show
>>>> OpenGL Error(GL_INVALID_OPERATION): initProgram
>>>> with Mesa 10.2.0-devel (git-d120506) on r600g.
>>>> What does (should) it look like on Intel?
>> 
>> Had this (geom shader) anybody running?
>> How should it look like?
>> Maybe a picture?
>> 
>> I did all of this to get a picture about the r600g geom shader 
>> glory...
>> ...sadly there is NO 32 bit version of
>> Unigine_Valley-1.0/Unigine_Heaven-4.0 ;-)
>> 
>> -Dieter


More information about the mesa-dev mailing list