Linux From Scratch This Forum is for the discussion of LFS.
LFS is a project that provides you with the steps necessary to build your own custom Linux system.
Notices
Welcome to
LinuxQuestions.org , a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free.
Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please
contact us . If you need to reset your password,
click here .
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a
virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month.
Click here for more info.
07-18-2012, 06:57 PM
#1
LQ Newbie
Registered: Jul 2012
Posts: 5
Rep:
Mesa can not build because I don't have libglapi.
Hi! Recently I've finished LFS and started BLFS. But I'm having a problem in chapter 24 building Mesalib-8.0.4. I'm using the newest version BLFS.
When I do make after following the instructions it ends with this:
Code:
make[1]: Entering directory `/root/xc/Mesa-8.0.4/xdemos'
gcc -I../include -L../lib -lGL -lX11 -lm -o glxinfo glxinfo.c
/usr/bin/ld: warning: libglapi.so.0, needed by ../lib/libGL.so, not found (try using -rpath or -rpath-link)
../lib/libGL.so: undefined reference to `_glapi_get_proc_address'
../lib/libGL.so: undefined reference to `_glapi_get_dispatch_table_size'
../lib/libGL.so: undefined reference to `_glthread_GetID'
../lib/libGL.so: undefined reference to `_glapi_check_multithread'
../lib/libGL.so: undefined reference to `_glapi_set_context'
../lib/libGL.so: undefined reference to `_glapi_set_dispatch'
../lib/libGL.so: undefined reference to `_glapi_tls_Dispatch'
collect2: ld returned 1 exit status
make[1]: *** [glxinfo] Error 1
make[1]: Leaving directory `/root/xc/Mesa-8.0.4/xdemos'
make: *** [default] Error 1
I've tried searching for libglapi using
and
Code:
find / libglapi.so.0
but I could not find it. I also could not find an answer to this anywhere on my internet! Does anyone have an idea what I could have done wrong?
Last edited by Dr. 2; 07-18-2012 at 07:20 PM .
07-18-2012, 08:19 PM
#2
Member
Registered: Aug 2004
Location: UK
Distribution: Gentoo, OpenBSD, Debian, FreeBSD, RHEL, CentOS
Posts: 65
Rep:
http://www.linuxfromscratch.org/blfs/view/svn/x/mesalib.html
Are these the instructions you're following? My interpretation is that the mesa build will create the libglapi library. This leads me to wonder what your. /configure line is. I suspect a typo or missing --enable-shared-glapi option. Can you post it here?
I assume the checksum of the tarball was ok and that you're working in a fresh unpacked directory.
1 members found this post helpful.
07-19-2012, 08:37 AM
#3
LQ Newbie
Registered: Jul 2012
Posts: 5
Original Poster
Rep:
The checksum says OK and I'm working in the fresh Mesa directory that was created after untarring. I'm using these commands
Code:
sed 's@FLAGS=\"-g@FLAGS=\"@' -i configure &&
patch -Np1 -i ../MesaLib-8.0.4-add_xdemos-2.patch &&
patch -Np1 -i ../MesaLib-8.0.4-llvm-3.1-fixes-1.patch &&
./configure --prefix=$XORG_PREFIX \
--enable-texture-float \
--enable-gles1 \
--enable-gles2 \
--enable-xa \
--enable-shared-glapi \
--enable-shared-dricore \
--enable-glx-tls \
--with-gallium-drivers="nouveau,r300,r600,svga,swrast" &&
make
Exactly as in the BLFS book (Except I don't use the escaped newlines, but that shouldn't make a difference) and I checked it several times to be sure there were no typos.
And libglapi.so.0 is in the lib directory in the untared mesa directory.
Last edited by Dr. 2; 07-19-2012 at 09:17 AM .
07-19-2012, 10:14 AM
#4
Member
Registered: Aug 2004
Location: UK
Distribution: Gentoo, OpenBSD, Debian, FreeBSD, RHEL, CentOS
Posts: 65
Rep:
If the same configure options are exactly the same as created/cached with config.status then the libglapi.so.0 library should be installed into Mesa-8.0.4/lib/. Either way it should build cleanly.
Admittedly I'm not doing the following test on BLFS and with subtly different configure options so at least I can run make...but evidently, libglapi.so.0 is the first thing to be built. I noticed also that to start with there is a python2 script executed relating to glapi. My system is using python 2.7.
Had to strip nouveau from gallium driver set, and force only radeon dri driver ( to remove libdrm_intel dependency ) for the purposes of testing on my system - this is not intended to recommend better configure options than the excellent documentation for BLFS.
Code:
./configure --prefix=/usr/lib/xorg \
--with-dri-drivers=radeon \
--enable-gles1 \
--enable-gles2 \
--enable-xa \
--enable-texture-float \
--enable-shared-dricore \
--enable-glx-tls \
--with-gallium-drivers="r300,r600,svga,swrast" \
--enable-shared-glapi
Code:
Making sources for autoconf
gmake[2]: Entering directory `/home/grant/build/Mesa-8.0.4/src/mapi/shared-glapi'
python2 -t -O -O ../../../src/mapi/mapi/mapi_abi.py --mode lib --printer shared-glapi ../../../src/mapi/glapi/gen/gl_and_es_API.xml > glapi_mapi_tmp.h
running /usr/bin/makedepend
gmake[2]: Leaving directory `/home/grant/build/Mesa-8.0.4/src/mapi/shared-glapi'
gmake[2]: Entering directory `/home/grant/build/Mesa-8.0.4/src/mapi/shared-glapi'
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/entry.c -o entry.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/mapi_glapi.c -o mapi_glapi.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/stub.c -o stub.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/table.c -o table.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/u_current.c -o u_current.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/u_execmem.c -o u_execmem.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden ../../../src/mapi/mapi/u_thread.c -o u_thread.o
/bin/sh ../../../bin/mklib -o glapi -linker 'gcc' -ldflags '' \
-major 0 -minor 0 -patch 0 \
-id /usr/lib/xorg/lib/libglapi.0.dylib \
-install ../../../lib \
entry.o mapi_glapi.o stub.o table.o u_current.o u_execmem.o u_thread.o -lpthread
mklib: Making Linux shared library: libglapi.so.0.0.0
mklib: Installing libglapi.so.0.0.0 libglapi.so.0 libglapi.so in ../../../lib
gmake[2]: Leaving directory `/home/grant/build/Mesa-8.0.4/src/mapi/shared-glapi'
For reference, the following excerpt is from Mesa-8.0.4/doc/egl.html:
Quote:
* --enable-shared-glapi
By default, libGL has its own copy of libglapi. This options makes
libGL use the shared libglapi. This is required if applications mix
OpenGL and OpenGL ES.
Did you build
python 2 from chapter 13 and/or python 3? Could the src/mapi/mapi/mapi_abi.py not work with python 3 (?), if that version is the one you opted for. Or more specifically your system builds of 2 or 3? Just thinking aloud.
Disclaimer : I'm not an LFS nor BLFS expert
so I lend my comments to correction by persons more experienced with such systems.
Last edited by whizzit; 07-19-2012 at 12:50 PM .
Reason: fix spelling error
1 members found this post helpful.
07-19-2012, 12:53 PM
#5
LQ Newbie
Registered: Jul 2012
Posts: 5
Original Poster
Rep:
Thanks for the responses.
When I type "python" python 2.7.3 starts so I think that I got python working correctly. I also get similar output to what you got above when I start make.
This is what I get: (Only the start it goes on a long time before it crashes)
Code:
make[1]: Entering directory `/root/xc/Mesa-8.0.4/src'
Making sources for autoconf
make[2]: Entering directory `/root/xc/Mesa-8.0.4/src/mapi/shared-glapi'
python -t -O -O ../../../src/mapi/mapi/mapi_abi.py --mode lib --printer shared-glapi ../../../src/mapi/glapi/gen/gl_and_es_API.xml > glapi_mapi_tmp.h
running /usr/bin/makedepend
make[2]: Leaving directory `/root/xc/Mesa-8.0.4/src/mapi/shared-glapi'
make[2]: Entering directory `/root/xc/Mesa-8.0.4/src/mapi/shared-glapi'
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/entry.c -o entry.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/mapi_glapi.c -o mapi_glapi.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/stub.c -o stub.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/table.c -o table.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/u_current.c -o u_current.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/u_execmem.c -o u_execmem.o
gcc -c -I../../../include -I../../../src/mapi -DMAPI_MODE_GLAPI -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/u_thread.c -o u_thread.o
/bin/sh ../../../bin/mklib -o glapi -linker 'gcc' -ldflags '' \
-major 0 -minor 0 -patch 0 \
-id /usr/lib/libglapi.0.dylib \
-install ../../../lib \
entry.o mapi_glapi.o stub.o table.o u_current.o u_execmem.o u_thread.o -lpthread
mklib: Making Linux shared library: libglapi.so.0.0.0
mklib: Installing libglapi.so.0.0.0 libglapi.so.0 libglapi.so in ../../../lib
make[2]: Leaving directory `/root/xc/Mesa-8.0.4/src/mapi/shared-glapi'
make[2]: Entering directory `/root/xc/Mesa-8.0.4/src/mapi/glapi'
running /usr/bin/makedepend
make[2]: Leaving directory `/root/xc/Mesa-8.0.4/src/mapi/glapi'
make[2]: Entering directory `/root/xc/Mesa-8.0.4/src/mapi/glapi'
gcc -c -I../../../include -I../../../src/mapi -I../../../src/mesa -DMAPI_MODE_BRIDGE -DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\" -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -fPIC -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0301 -fvisibility=hidden ../../../src/mapi/mapi/entry.c -o entry.o
mklib: Making Linux static library: libglapi.a
ar: creating libglapi.a
make[2]: Leaving directory `/root/xc/Mesa-8.0.4/src/mapi/glapi'
It builds correctly when I leave out --enable-shared-glapi .
Last edited by Dr. 2; 07-19-2012 at 02:19 PM .
07-19-2012, 04:20 PM
#6
Member
Registered: Aug 2004
Location: UK
Distribution: Gentoo, OpenBSD, Debian, FreeBSD, RHEL, CentOS
Posts: 65
Rep:
libxml2-python.so
That's interesting. So the shared library is getting built ( when using --enable-shared-glapi obviously ) but just doesn't contain the right symbols.
Might be worth checking that the missing symbols in the error message from your original post are contained within the Mesa-8.0.4/src/mapi/shared-glapi/mapi_glapi.o object file and compare that with what is in Mesa-8.0.4/lib/libglapi.so.0.0.0 using objdump -t, for example.
The only other idea I have is that the
libxml2-python must be built if using OpenGL ES, which is the case here due to --enable-gles1 and --enable-gles2. The
BLFS libxml2 build instructions only recommend Python as a dependency whereas the
MesaLib instructions state that it that the libxml2-python module *is* required ( but only recommended ).
Curiously, all bar 2 xml files in the checked out source code are within the src/mapi/glapi/ directory.
1 members found this post helpful.
07-20-2012, 12:35 PM
#7
LQ Newbie
Registered: Jul 2012
Posts: 5
Original Poster
Rep:
All symbols are in Mesa-8.0.4/lib/libglapi.so.0.0.0 and only 1 is missing in Mesa-8.0.4/src/mapi/shared-glapi/mapi_glapi.o.
How can I see if I have libxml2-python? I have installed both python and libxml2 in that order.
I have found this
Code:
python -c "import sys; print sys.path"
And I tried replacing sys with libxml2 and it says
Code:
'module' object has no attribute 'path'
So I think that I have got libxml2-python because when I replace sys with some boogus name like ml2 it says there is no module named ml2.
The build works also when I leave out --enable-gles1 and --enable-gles2.
07-20-2012, 04:04 PM
#8
Member
Registered: Aug 2004
Location: UK
Distribution: Gentoo, OpenBSD, Debian, FreeBSD, RHEL, CentOS
Posts: 65
Rep:
Ok. The BLFS libxml2 docs say the module would be libxml2mod.so, but it seems you have it.
Well, my last wacky idea wasn't worth mentioning except I've exhausted everything I can think of, so:
* lib/libglapi.so.0.0.0 seems to have the right symbols. The original error message was unable to find libglapi.so.0 - this being a symlink to libglapi.so.0.0.0.
Code:
ged Mesa-8.0.4 $ ls -lgo lib/libglapi*
lrwxrwxrwx 1 13 Jul 20 20:19 lib/libglapi.so -> libglapi.so.0
lrwxrwxrwx 1 17 Jul 20 20:19 lib/libglapi.so.0 -> libglapi.so.0.0.0
-rwxr-xr-x 1 230205 Jul 20 20:19 lib/libglapi.so.0.0.0
A long shot I wouldn't put money on.
I don't know what else to suggest.
1 members found this post helpful.
07-21-2012, 07:38 AM
#9
LQ Newbie
Registered: Jul 2012
Posts: 5
Original Poster
Rep:
I decided to simply leave out --enable-shared-glapi and got xwindows working. I guess I can always try compiling Mesa with --enable-shared-glapi again if this causes me problems in the future.
Anyways thanks for your help I really appreciate it!
07-22-2012, 04:19 PM
#10
Member
Registered: Aug 2004
Location: UK
Distribution: Gentoo, OpenBSD, Debian, FreeBSD, RHEL, CentOS
Posts: 65
Rep:
You're welcome. I felt sure we'd crack it.
If/when you revisit this in the future and find a solution, I will be interested to know what we overlooked.
All the best.
All times are GMT -5. The time now is 12:35 AM .
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know .
Latest Threads
LQ News