[Mesa-dev] Mesa-7.9 fails to (re)build if xorg-server is already installed
Thomas Hellstrom
thellstrom at vmware.com
Fri Oct 15 07:42:32 PDT 2010
On 10/15/2010 03:26 PM, Stephan Raue wrote:
> Hi Thomas,
>
> Am 15.10.2010 09:46, schrieb Thomas Hellstrom:
>
>> On 10/15/2010 01:15 AM, Stephan Raue wrote:
>>
>>> Hi,
>>>
>>> i crosscompiling Mesa-7.9. if xorg-server-1.9 already installed in
>>> toolchain (headers, libs) and i (re)build Mesa it fails. if i remove the
>>> devel packages from toolchain and build xorg-server again after Mesa it
>>> compiles:
>>>
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/bin/i686-openelec-linux-gnu-gcc
>>>
>>> -c -I. -I../../../../src/gallium/include
>>> -I../../../../src/gallium/auxiliary -I../../../../src/gallium/drivers
>>> -DHAVE_CONFIG_H -DHAVE_XEXTPROTO_71 -DHAVE_LIBKMS
>>> -I/home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/libkms
>>>
>>> -I/home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/pixman-1
>>>
>>> -I/home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg
>>>
>>> -I/home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/libdrm
>>>
>>> -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary
>>> -I../../../../include -I../../../../src/mesa
>>> -I../../../../src/mesa/drivers/dri/common -I../../../../src/mesa/main
>>> -O3 -ffast-math -mmmx -msse -msse2 -mfpmath=sse -ftree-loop-distribution
>>> -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity
>>> -Wall -pipe -march=pentium-m -m32 -fexcess-precision=fast -s
>>> -fomit-frame-pointer -Wall -Wmissing-prototypes -std=c99 -ffast-math
>>> -fvisibility=hidden -fno-strict-aliasing -fPIC -D_GNU_SOURCE
>>> -DPTHREADS -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DUSE_EXTERNAL_DXTN_LIB=1
>>> -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING
>>> -DHAVE_ALIAS -DHAVE_XEXTPROTO_71 xorg_output.c -o xorg_output.o
>>> In file included from
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/xf86Crtc.h:25:0,
>>>
>>> from xorg_output.c:34:
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/edid.h:623:4:
>>>
>>> warning: declaration does not declare anything
>>> xorg_output.c: In function 'output_get_modes':
>>> xorg_output.c:131:6: warning: 'Xcalloc' is deprecated (declared at
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/os.h:225)
>>>
>>> xorg_output.c: In function 'output_destroy':
>>> xorg_output.c:198:5: warning: 'Xfree' is deprecated (declared at
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/os.h:234)
>>>
>>> xorg_output.c: In function 'xorg_output_init':
>>> xorg_output.c:265:2: warning: 'Xcalloc' is deprecated (declared at
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/os.h:225)
>>>
>>> xorg_output.c:272:6: warning: 'Xfree' is deprecated (declared at
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/os.h:234)
>>>
>>> In file included from
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/xf86Crtc.h:25:0,
>>>
>>> from xorg_tracker.h:42,
>>> from xorg_xv.c:1:
>>> /home/stephan/projects/openelec/build.OpenELEC-ATV.i386.devel/toolchain/i686-openelec-linux-gnu/sysroot/usr/include/xorg/edid.h:623:4:
>>>
>>> warning: declaration does not declare anything
>>> xorg_xv.c: In function 'display_video':
>>> xorg_xv.c:539:39: error: 'struct _Pixmap' has no member named 'screen_x'
>>> xorg_xv.c:539:59: error: 'struct _Pixmap' has no member named 'screen_y'
>>> xorg_xv.c:565:47: error: 'struct _Pixmap' has no member named 'screen_x'
>>> xorg_xv.c:566:47: error: 'struct _Pixmap' has no member named 'screen_y'
>>> gmake[4]: *** [xorg_xv.o] Fehler 1
>>>
>>>
>> There are known problems with the xorg state tracker and Xserver-1.10
>> development series. (Xserver git master). I'm working on fixing those.
>> However, I just (yesterday) compiled the Xorg state tracker with the
>> HEAD of Xserver-1.9-branch, and it compiled, although not without
>> warnings.
>>
>> If you need to compile the Xorg state tracker against Xserver master,
>> you should always expect troubles because there will always be a lag
>> time to keep up with Xserver API changes.
>>
>> Otherwise I recommend either the Xserver-1.9 stable branch or not
>> building the Xorg state tracker together with mesa (see the
>> --with-state-trackers configure option)
>>
>>
> i am using xorg-server 1.9 (final release).
>
> normally i build mesa (7.9 final release) because i build xorg-server, i
> dont need to build against xorg server. but sometimes its needed for me
> to rebuild Mesa, then xorg-server is already installed.
>
> its only if i enable gallium-nouveau option for using with nouveau
> driver. my configure otpions then looks like:
>
> HOST_CC=$HOST_CC \
> HOST_OPT_FLAGS="$HOST_CFLAGS" \
> X11_INCLUDES= \
> DRI_DRIVER_INSTALL_DIR="$XORG_PATH_DRI" \
> DRI_DRIVER_SEARCH_DIR="$XORG_PATH_DRI" \
> ./configure --host=$TARGET_NAME \
> --build=$HOST_NAME \
> --prefix=/usr \
> --sysconfdir=/etc \
> --localstatedir=/var \
> --disable-static \
> --enable-shared \
> --disable-debug \
> --disable-selinux \
> --enable-xcb \
> --disable-glx-tls \
> --enable-driglx-direct \
> --disable-egl \
> --enable-glu \
> --disable-gl-osmesa \
> --disable-glut \
> --disable-glw \
> --disable-motif \
> --with-driver=dri \
> --with-dri-drivers=$MESA_DRIVERS \
> --with-dri-driverdir="$XORG_PATH_DRI" \
> --with-xorg-driver-dir="$XORG_PATH_DRIVERS" \
> --enable-gallium-nouveau \
> --disable-gallium-i915 \
> --disable-gallium-i965 \
> --disable-gallium-radeon \
> --disable-gallium-r600 \
> --disable-gallium-svga
>
> greetings
>
> Stephan
>
>
Hmm. Yes I see now, the error occurs because the X server with the
COMPOSITE extension enabled. The xorg state-tracker should really check
for that, but it doesn't. While this gets fixed, either make sure your X
server is compiled with the COMPOSITE extension or, as mentioned above,
don't include the xorg state-tracker in the build.
/Thomas
More information about the mesa-dev
mailing list