[Mesa-dev] Regading OpenGLES2 on Linux

Ramesh Reddy Emmadi Ramesh_Emmadi at infosys.com
Thu Jan 31 06:01:46 PST 2013

Hi Michel,

Thanks for your info.

Got the error1 while compiling mesa-8.0.4 with the following configuration options and  commented the "_mesa_BindBufferBase" function in  src/mesa/main/bufferobj.c file. After this change able to compile the code successfully, but while make install got one more error(error2). Can you please let us know, is there any thing wrong in the configuration and also any changes required for code to compile with --enable-gles2 only (without opengl and opengles1). if opengles2 only work without opengl and openles2, we want to know whether  mesa-demos opengles2 folder will compile without any issues? or any code changes required to compile the es2 demos? for X11.

./autogen.sh --prefix=/opt/xorg2 --with-gallium-drivers=r600 --enable-gles2 --enable-debug --with-dri-drivers --with-egl-platforms=x11,drm --disable-opengl --enable-gallium-egl --enable-dri --enable-shared-glapi

Error 1: 

imklib: Making Linux shared library:  r600_dri.so.tmp
g++ -I/opt/xorg/include -g -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -g  -fPIC  -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DDEBUG -DHAVE_POSIX_MEMALIGN -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -fvisibility=hidden -o r600_dri.so.test ../../../../src/mesa/drivers/dri/common/dri_test.o r600_dri.so.tmp  ../../../../src/mesa/libmesa.a  -L/opt/xorg/lib -ldrm   -lexpat -lm -lpthread -ldl  -L/opt/xorg/lib;
r600_dri.so.tmp: undefined reference to `_mesa_BindBufferBase'
collect2: ld returned 1 exit status
make[3]: *** [r600_dri.so] Error 1
make[3]: Leaving directory `/home/amd/Downloads/mesa-mesa-8.0.4/src/gallium/targets/dri-r600'
make[2]: *** [default] Error 1
make[2]: Leaving directory `/home/amd/Downloads/mesa-mesa-8.0.4/src/gallium/targets'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory `/home/amd/Downloads/mesa-mesa-8.0.4/src'
make: *** [default] Error 1
root at amd-desktop:/home/amd/Downloads/mesa-mesa-8.0.4#

Error 2:

/usr/bin/install -c -d /opt/xorg2/include/GL
/usr/bin/install -c -m 644 ../../include/GL/*.h \
/usr/bin/install -c -d /opt/xorg2/lib
/usr/bin/install -c -d /opt/xorg2/lib/pkgconfig
/bin/bash ../../bin/minstall ../../lib/libGL.*so* \
Unknown type of argument:  ../../lib/libGL.*so*
make[3]: *** [install-libgl] Error 1
make[3]: Leaving directory `/home/amd/Downloads/mesa-mesa-8.0.4/src/mesa'
make[2]: *** [install] Error 1
make[2]: Leaving directory `/home/amd/Downloads/mesa-mesa-8.0.4/src/mesa'
make[1]: *** [install] Error 1
make[1]: Leaving directory `/home/amd/Downloads/mesa-mesa-8.0.4/src'
make: *** [install] Error 1

Thanks in advance.

Thanks and Regards,
From: Michel Dänzer [michel at daenzer.net]
Sent: Thursday, January 31, 2013 3:53 PM
To: Ramesh Reddy Emmadi
Cc: mesa-dev at lists.freedesktop.org
Subject: Re: [Mesa-dev] Regading OpenGLES2 on Linux

On Don, 2013-01-31 at 09:29 +0000, Ramesh Reddy Emmadi wrote:
>         OpenGL:          no (ES1: no ES2: yes)


> make[4]: Entering directory `/home/amd/Downloads/testtrails/mesa-mesa-9.0.1/src/mesa'
>   CC     api_arrayelt.lo
>   CC     api_exec.lo
> ../../src/mesa/main/api_exec.c: In function '_mesa_create_exec_table':
> ../../src/mesa/main/api_exec.c:132:4: warning: passing argument 1 of '_mesa_loopback_init_api_table' from incompatible pointer type [enabled by default]
> ../../src/mesa/main/api_loopback.h:44:1: note: expected 'struct _glapi_table *' but argument is of type 'struct gl_context *'
> ../../src/mesa/main/api_exec.c:132:4: error: too many arguments to function '_mesa_loopback_init_api_table'
> ../../src/mesa/main/api_loopback.h:44:1: note: declared here
> ../../src/mesa/main/api_exec.c:525:40: error: '_mesa_GetVertexAttribPointervNV' undeclared (first use in this function)
> ../../src/mesa/main/api_exec.c:525:40: note: each undeclared identifier is reported only once for each function it appears in
> make[4]: *** [api_exec.lo] Error 1
> Can you please let us know whether  we can build the mesa for only
> opengles2 without opengl ? (--disable-opengles2 and –disable-opengl),
> and if it is how to build mesa for opengles2 only.

Does it help if you add --enable-gallium-egl and/or --with-dri-drivers''
to the configure arguments?

If not, I'm afraid your findings indicate GLES2 without OpenGL doesn't
work with 8.0 or 9.0. FWIW though, I just tried it with current Git
master, and it seems to work fine.

> And I have looked at  : http://mesa3d.org/opengles.html and in this
> they mentioned –enable-opengles2 and –enable-opengles2 for Gallium
> driver hardware. To work with gallium driver is it required both
> opengles1 and opengles2?

No, enabling only opengles2 seems to work fine.

Earthling Michel Dänzer           |                   http://www.amd.com
Libre software enthusiast         |          Debian, X and DRI developer

**************** CAUTION - Disclaimer *****************
This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely 
for the use of the addressee(s). If you are not the intended recipient, please 
notify the sender by e-mail and delete the original message. Further, you are not 
to copy, disclose, or distribute this e-mail or its contents to any other person and 
any such actions are unlawful. This e-mail may contain viruses. Infosys has taken 
every reasonable precaution to minimize this risk, but is not liable for any damage 
you may sustain as a result of any virus in this e-mail. You should carry out your 
own virus checks before opening the e-mail or attachment. Infosys reserves the 
right to monitor and review the content of all messages sent to or from this e-mail 
address. Messages sent to or from this e-mail address may be stored on the 
Infosys e-mail system.
***INFOSYS******** End of Disclaimer ********INFOSYS***

More information about the mesa-dev mailing list