Le mardi 06 juillet 2010 à 16:00 +0800, Chia-I Wu a écrit : > On Tue, Jul 6, 2010 at 4:39 AM, Lionel Landwerlin <llandwer...@gmail.com> > wrote: > > I'm trying to build the last Mesa 7.8.2 on top of an Xlib stack. > > What I need, is a software implementation of GLES 2.0 with EGL. > > This is how I configure Mesa : > > > > ./configure --disable-glu --disable-glw --disable-glut --with-driver=xlib > > --with-state-trackers=es,egl --disable-gallium-svga --disable-gallium-intel > > --disable-gallium-radeon --disable-gallium-nouveau --disable-gallium-swrast > > --with-demos=no > > > > Unfortunaltly the build fails near from the end with this error : > > > > ... > > > > mklib: Making Linux shared library: libGLESv2.so.2.0.0 > > mklib: Installing libGLESv2.so.2.0.0 libGLESv2.so.2 libGLESv2.so in > > ../../../../lib64 > > make[4]: quittant le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium/state_trackers/es » > > make[4]: entrant dans le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium/state_trackers/egl » > > rm -f depend > > touch depend > > /usr/bin/makedepend -fdepend -I/usr/lib/gcc/x86_64-linux-gnu/4.4.4/include > > -I/usr/lib/gcc/x86_64-linux-gnu/4.4.4/include-fixed -I. > > -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary > > -I../../../../src/egl/main -I../../../../include > > -I../../../../src/gallium/drivers -I../../../../src/glx > > -I../../../../src/mesa -I/opt/pace-xorg/include/libdrm > > -I/opt/pace-xorg/include/libdrm common/egl_g3d.c common/egl_g3d_image.c > > common/egl_st.c x11/glxinit.c x11/native_dri2.c x11/native_x11.c > > x11/native_ximage.c x11/sw_winsys.c x11/x11_screen.c > > ../../../../src/glx/dri2.c kms/native_kms.c 2> /dev/null > > make[4]: quittant le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium/state_trackers/egl » > > make[4]: entrant dans le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium/state_trackers/egl » > > gcc -c -I. -I../../../../src/gallium/include > > -I../../../../src/gallium/auxiliary -I../../../../src/egl/main > > -I../../../../include -I../../../../src/gallium/drivers > > -I../../../../src/glx -I../../../../src/mesa > > -I/opt/pace-xorg/include/libdrm -D_GNU_SOURCE -DPTHREADS > > -DHAVE_POSIX_MEMALIGN -DUSE_XSHM -g -O2 -Wall -Wmissing-prototypes -std=c99 > > -ffast-math -fvisibility=hidden -fno-strict-aliasing -fPIC > > -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DHAVE_POSIX_MEMALIGN -DUSE_XSHM > > x11/glxinit.c -o x11/glxinit.o > > x11/glxinit.c:56: warning: no previous prototype for ‘__glXFindDisplay’ > > x11/glxinit.c: In function ‘AllocAndFetchScreenConfigs’: > > x11/glxinit.c:608: error: ‘__GLXscreenConfigs’ has no member named ‘scr’ > > x11/glxinit.c:609: error: ‘__GLXscreenConfigs’ has no member named ‘dpy’ > > make[4]: *** [x11/glxinit.o] Erreur 1 > > make[4]: quittant le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium/state_trackers/egl » > > make[3]: *** [subdirs] Erreur 1 > > make[3]: quittant le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium/state_trackers » > > make[2]: *** [default] Erreur 1 > > make[2]: quittant le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src/gallium » > > make[1]: *** [subdirs] Erreur 1 > > make[1]: quittant le répertoire « > > /home/djdeath/tmp/pace-xorg/mesa-7.8.2/src » > > make: *** [default] Erreur 1 > > > > Maybe all of this is the result of a misconfiguration on my side, so any > > help on this problem is welcome. > Thanks for reporting. The code wrongly expects GLX_DIRECT_RENDERING to be > always defined. It should have been fixed in git. > > If you use the tarball, you should be able to workaround the bug by passing > --with-driver=dri --with-dri-drivers="". Incidentally, you also need > --enable-gallium-swrast to enable software rasterizer for OpenGL ES. >
Hi Chia, Thanks for your response, it worked well. I have another question but first I think I need to give some context. I'm trying to build an environment on my laptop which mimics what I'm going to use on an embedded target. What I expect to find on my embedded target is a closed source libGL (EGL + GLES2.0) which is bound to the linux frame buffer interface as native system. Hopefully I will have access to an SDK which permits to "repackage" the GL library so it will use x11 as native system. Also I'm planning to use an X11 compositor to render the different applications which run on the system, and also I expect applications to use OpenGL for whatever stuff they need. In this scenario, I understand that everyone (including the xserver) will use direct rendering (which means to me that no one is going to forward its GL commands to the xserver, but maybe did I misunderstood something). So my question is, how do I build such a system ? To be precise, what options should I give to the configure script of Mesa ? Maybe am I wrong about this. Maybe indirect rendering will out perform direct rendering in such configuration, so anyone comments/advices on the subject are more than welcome. Thanks again, -- Lionel Landwerlin _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev