Summary: | Can't compile media-libs/mesa-6.5.1-r1 for mach64 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Juergen Rose <rose> |
Component: | [OLD] Library | Assignee: | Gentoo X packagers <x11> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | agaffney, cbm, gent_bz, leio, smeagol123, stefan, weeve |
Priority: | High | ||
Version: | 2006.1 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Juergen Rose
2006-11-11 11:13:44 UTC
I forget to say, that I have set VIDEO_CARDS="mach64 vesa fbdev" in /etc/make.conf Juergen What version of mesa is this? Bleh, ignore me, I just read the summary :P Do you have x11-drm installed? If so, what version? (In reply to comment #4) > Do you have x11-drm installed? If so, what version? > I have the same problem with roughly same configuration, my version of x11-drm: [ebuild R ] x11-base/x11-drm-20060608 VIDEO_CARDS="mach64 -i810 -mga -nv -r128 -radeon -savage -sis (-sunffb) -tdfx -via" 0 kB I'm going to compile to a lower version of mesa and see if that solves the problem. I have two machines with the VIDEO_CARDS="mach64" settings: - penguin, which works for some month with gentoo - scorpion, where I just try to install gentoo, i.e. it is a old slackware system and I have a partially working gentoo in a chroot environment. At penguin x11-drm is not installed, but mesa-6.5.1-r1 is installed: root@penguin:/root(1)# emerge -pvD x11-drm mesa ... [ebuild N ] x11-base/x11-drm-20060608 VIDEO_CARDS="mach64 -i810 -mga -nv -r128 -radeon -savage -sis (-sunffb) -tdfx -via" 556 kB [ebuild R ] media-libs/mesa-6.5.1-r1 USE="hardened nptl -debug -doc -motif" VIDEO_CARDS="mach64 -i810 -mga -none -r128 -radeon -s3virge -savage -sis (-sunffb) -tdfx -trident -via" 0 kB If I try to install mesa once more, it fails with: root@penguin:/root(3)# emerge -vD mesa ... i686-pc-linux-gnu-gcc -c ... mach64_ioctl.c -o mach64_ioctl.o mach64_ioctl.c: In function 'mach64FireBlitLocked': mach64_ioctl.c:190: error: 'drm_mach64_blit_t' has no member named 'idx' At scorpion, where the installation of gentoo is stopped, because of failed installation of mesa, which is needed by xorg-server, x11-drm was at first also not installed. Now I installed it. root@scorpion:/(5)# emerge -pvD x11-drm mesa ... Calculating dependencies... done! [ebuild R ] x11-base/x11-drm-20060608 VIDEO_CARDS="mach64 -i810 -mga -nv -r128 -radeon -savage -sis (-sunffb) -tdfx -via" 0 kB [ebuild N ] media-libs/mesa-6.5.1-r1 USE="hardened nptl -debug -doc -motif" VIDEO_CARDS="mach64 -i810 -mga -none -r128 -radeon -s3virge -savage -sis (-sunffb) -tdfx -trident -via" 0 kB But the installation of mesa still failes with the same error: root@scorpion:/(5)# emerge -pvD x11-drm mesa ... mach64_ioctl.c: In function 'mach64FireBlitLocked': mach64_ioctl.c:190: error: 'drm_mach64_blit_t' has no member named 'idx' So I assume the error is not related to x11-drm. drm_mach64_blit_t declaration comes from /usr/include/drm/mach64_drm.h, which comes from x11-libs/libdrm I have libdrm-2.3.0 on one system, and on there drm_mach64_blit_t struct doesn't have an idx member and mesa compilation fails with video_cards_mach64 int idx was replaced with void *buf on 2nd Oct 2006, as can be seen from http://gitweb.freedesktop.org/?p=mesa/drm.git;a=commitdiff;h=c9e3aa961eb90265ec024ff57013786e4d47d0e7 As such, libdrm 2.2.0 or greater can't work with mesa mach64 dri bits that require idx in drm_mach64_blit_t typedef. mesa was adapted to the change on the same date, as can be seen from http://gitweb.freedesktop.org/?p=users/krh/mesa.git;a=commitdiff;h=735c89e8243f6f57148aee3dc9b4b68d5b2c6de4 I don't see any tags after that on mesa - only mesa_6_5_1 BEFORE the adapting. Perhaps we need to patch the change ourselves meanwhile (I don't know if the referenced diff is the only necessary one), or back out libdrm-2.3.0 to lower ebuild visibility meanwhile. But here's the information and xorg team knows better what to do with it :) Cheers, and hope it helps to speed things up ;) Emerging mesa-6.5.1-r2 also fails with mach64_ioctl.c: In function 'mach64FireBlitLocked': mach64_ioctl.c:190: error: 'drm_mach64_blit_t' has no member named 'idx' Juergen (In reply to comment #7) Thanks for this - it should indeed speed things up :) Donnie, this week is going to be horrible for time, so hopefully you'll have time to commit this before me. A workaround for now is to use libdrm-2.0.2 until we are able to patch this. Fixed in mesa-6.5.1-r3. Thanks for your patience. |