Non et de toute façon,je n’arrive plus à les installer. :paf: ( oui,je suis nul et j’assume )
Oh non ya pas besoin d’être nul pour avoir des difficultés avec ces satanés drivers, ils sont bien souvent assez capricieux :riva: .
Oh, oui, terriblement capricieux :na:
J’avais fait le voeu de ne plus utiliser les pilotes ATI proprio, mais bon, je vais peut-être les réinstaller :paf:, sauf si je passe à dapper entre temps (il y a bien l’accélération graphique pour les cartes ati à chipset r3xx, non? )
Le site Phoronix a réalisé un test de performance des derniers pilotes ATI v8.23.7, destinés aux systèmes Linux.
Salut,
Pour ma part RAS sur ces nouveaux drivers enfin j’ai pas encore tester de jeux … en espérant enfin avoir 100fps sous cs 1.6 et cedega 5.1 … on peut toujours réver non ?? :ane:
Je tourne sous suse 10 et ati radeon 9800 pro (dual screen)
Hop, je poste mon problème ici, il y a plus de chances de trouver une réponse ici que dans le topic jeux ![]()
Donc, quand je lance Civ4 via cedega, X m’envoie cette erreur-là (qui est clairement dûe aux drivers ATI) :
J’ai cherché sur le net des solutions (pas trouvé), bidouillé le fichier CivilizationIV.ini et tout, mais ça n’a rien donné. ![]()
T’as quelle version des pilotes? Si t’as pas les derniers et qu’ils sont pas dispo via le gestionnaire de paquets de ta distribution télécharge les sur le site d’ati.
Si tu as les derniers essaie avec une version plus ancienne :paf: , va savoir ca marchera peut etre :neutre: .
J’ai la dernière (8.23.07) mais ça faisait la même chose avec la 8.16.20 ![]()
Si je pouvais trouver une solution du genre une option à activer/désactiver dans xorg.conf, ça serait top. Toujours en cours de recherche…
J’ai essayé plein de choses trouvées sur le forum de transgaming.org, rien n’a marché.
il y avait ce commentaire aussi sur le forum :
![]()
Je vais devoir me résigner à faire une partition de quelques Go pour mettre un petit XP, en attendant qu’ATi se bouge…
Le 2.6.16 est censé marcher avec les derniers ATI?
Je ne sais pas, j’ai un 2.6.12. Tiens, faudrait que j’essaie ça ce week-end ![]()
Le probleme vient plus de l’interaction cedega/driver ati que du noyau, non ?
Je suppose que tu l’as deja lu asbel, mais ca vient du pbuffer qui n’est pas desactivable dans cedega ![]()
Fallait leur demandé une nvidia au SAV :o
Oui, tu me l’as dit, j’ai trouvé quelques trucs à ce sujet sur le forum de transgaming.org et je ne suis pas le seul dans ce cas. La seule solution, c’est de jouer à Civ4 sous windows en attendant qu’ATi corrige ce problème ![]()
Je peux jouer à ut2004 détails à fond, c’est déjà ça ![]()
Nouveaux pilotes ATI 8.24.8 :ane:
Bon c’est pas tout ça, mais je vais aller installer les catalyst 6.4 pour gagner 0,5 fps sous oblivion moi :sleep:
Et commen on installe ces machins quand on a une sid qui vient de passer en xorg7 ???
Au mieux X ne se lance pas en disant qui n’arrive pas à charger le module fglrx sans tout me planter…
Est ce que qlqn a réussi à installer ces drivers sur une sid à jour? (j’ai un post dédié pour ce pb ;))
ps : Ca marchait très bien sur ma sid (avec un noyau complié avec make-kpkg et l’installeur ati) avant le passage à xorg7.
Théoriquement, l’installeur supporte Xorg >=6.9 depuis la version précédente :neutre:
J’ai 2 pc sous ubuntu dapper (xorg : 7.0.0-0ubuntu28, fglrx 8.23.7, linux 2.6.15), et pas de souci… ![]()
Trouvé dans l’ebuild des 8.23.7 de gentoo :
# remove intermodule calls for 2.6.16
if kernel_is 2 6 16; then
epatch ${FILESDIR}/${PN}-8.22.5-intermodule.patch
epatch "${FILESDIR}/${P}-noiommu.patch"
fi
Essaie de chercher de ce côté là ?
Sinon, je crois qu’avec le 2.6.16 ils ont introduit une nouvelle manière de sélectionner sa quantité de mémoire (1G/3G split et compagnie)… c’est peut-être ça ? :neutre:
Pour intermodule j’ai été plus bourrin : j’ai patché le noyau ![]()
Sinon ca marche. Le pb était que l’installeur ne copiait pas les fichiers là où il fallait.
L’idéee pour corrigé ça est de lui faire faire un paquet ubuntu.
J’ai utilisé ce script :
#!/bin/sh
UNSUPPORTED=1
#CARDS=$(lspci -n|gawk '{sub("Class","")} $2 == "0300:" {print$3}')
CARDS=$(lspci -n|perl -e 'while(<>){(push(@cards,$_)) if (s/^.+?\s*0300\:\s+(.+?)\s+.*$/$1/)} print join(" ",@cards);')
for card in $CARDS; do
VENDOR=${card%:*}
DEVICE=${card#*:}
case $VENDOR in
1002)
case $DEVICE in
3150|3152|3154|3e50|3e54|4144|4146|4147|4148|4149|4150|4151|4152|4153|4154|4155|4242|4966|4967|4a48|4a49|4a4a|4a4b|4a4c|4a4d|4a4e|4a4f|4a50|4a54|4b48|4b49|4b4a|4b4b|4b4c|4c64|4c66|4c67|4e44|4e45|4e46|4e47|4e48|4e49|4e4a|4e4b|4e50|4e51|4e52|4e54|4e56|5148|514c|514d|5460|5461|5462|5464|5548|5549|554a|554b|554d|554e|554f|5550|5551|564a|564b|5652|5653|5834|5835|5954|5955|5960|5961|5962|5964|5974|5975|5a41|5a42|5a61|5a62|5b60|5b62|5b63|5b64|5c61|5c63|5d48|5d49|5d4a|5d4d|5d4f|5d52|5d57|5e48|5e49|5e4a|5e4b|5e4c|5e4d|5e4f|7100|7101|7102|7108|7109|710a|710b|710c|7140|7142|7145|7146|7149|714a|714b|714c|714e|715e|71c0|71c2|71c5|71c6|71ce|71de|7240|7243|7244|7245|7246|7247|7248|7249|724a|724b|724c|724d|724e|724f|7834) UNSUPPORTED=0;;
564f) UNSUPPORTED=0;; # MOBILITY RADEON X700 XL
*) UNSUPPORTED=1;;
esac
;;
esac
done
if [ "$UNSUPPORTED" == "1" ]; then
echo Error: No ATI RADEON/FIREGL adapter found.
exit 3
fi
if test -e /etc/X11/XF86Config-4 -a -z "`grep -s -e radeon -e fglrx -e ati -e vesa -e fbdev /etc/X11/XF86Config-4|grep Driver`"; then
echo Error: Bad /etc/X11/XF86Config-4 file.
exit 4
fi
if test -e /etc/X11/xorg.conf -a -z "`grep -s -e radeon -e fglrx -e ati -e vesa -e fbdev /etc/X11/xorg.conf|grep Driver`"; then
echo Error: Bad /etc/X11/xorg.conf file.
exit 5
fi
if test $(id -u) != 0; then
echo Error: You must be root to run this script!
exit 6
fi
LAPTOP=""
[ "$(find /proc/acpi/battery/ -mindepth 1 -type d 2>/dev/null)" ] && LAPTOP="yes"
INSTALLED=""
[ -d /KNOPPIX ] || INSTALLED="yes"
if [ -n "$INSTALLED" ]; then
if test -n "$DISPLAY"; then
echo Error: Can\`t be run within X! Use a text console \(ALT-CTRL-F1\)
exit 7
fi
else
if grep -q unionfs /proc/mounts; then
echo Unionfs found.
else
echo Activating Unionfs now.
mkdir -p /tmp/union
mount -t unionfs -o dirs=/tmp/union/:/KNOPPIX /none /KNOPPIX/ 2>&1 >/dev/null
fi
fi
X_CONF=XF86Config-4
cd /usr/src
KVER=$(uname -r)
KV=${KVER:0:3}
#VER=8.22.5
#VER=8.23.7
VER=8.24.8
CPU=$(uname -m)
if [ "$CPU" == "x86_64" ]; then
ARCH="amd64"
else
CPU="i386"
ARCH="i386"
[ "$VER" == "8.24.8" ] && CPU=x86
fi
X_CONF=XF86Config-4
if which Xorg >/dev/null; then
X=_6_8_0-
[ -e /etc/X11/xorg.conf ] && X_CONF=xorg.conf
fi
unset X86
[ "$CPU" == "x86_64" ] && X86=64
unset BIT
[ "$CPU" == "x86_64" ] && BIT="64bit/"
DRIVER=ati-driver-installer-$VER-$CPU.run
if ! test -e $DRIVER; then
wget --referer=ati.com -Nc [url=http://www2.ati.com/drivers/linux/${BIT}${DRIVER}]http://www2.ati.com/drivers/linux/${BIT}${DRIVER}[/url]
fi
GL=/usr/X11R6/lib/libGL.so.1.2
dpkg --purge fglrx${X86}-4-3-0 &>/dev/null
dpkg --purge fglrx${X86}-6-8-0 &>/dev/null
dpkg --purge fglrx-glc22 &>/dev/null
dpkg --purge fglrx &>/dev/null
for package in $(dpkg-divert --list|grep "diversion of $GL"|awk '{print $7}'|grep -v fglrx-driver); do
dpkg-divert --package $package --remove $GL
done
if [ -e $GL.1st ]; then
rm -f $GL
mv $GL.1st $GL
fi
unset UP
if ! dpkg -l module-assistant &>/dev/null; then
apt-get update && UP=1
apt-get install --allow-unauthenticated module-assistant
fi
if ! dpkg -l build-essential &>/dev/null; then
[ -z "$UP" ] && apt-get update
apt-get install --allow-unauthenticated build-essential
fi
if ! [ -x /usr/bin/module-assistant ]; then
echo Error: module-assistant missing.
exit 1
fi
if test -f /etc/modutils/1alsa; then
mv /lib/modules/extra/alsa /lib/modules/`uname -r`/
rm -f /etc/modutils/1alsa
update-modules
fi
rm -rf fglrx-install
rm -f /tmp/fglrx* /tmp/xorg-driver-fglrx* fglrx* xorg-driver-fglrx*
rm -f /etc/fglrxrc /etc/fglrxprofiles.csv
DISTRIB_ID=Debian
DISTRIB_CODENAME=etch
X -version 2>&1|grep -q -e "X Window System Version 6.9" -e "X Window System Version 7.0" && DISTRIB_CODENAME=sid
if [ -d /usr/lib/xorg/modules ]; then
DISTRIB_ID=Ubuntu
DISTRIB_CODENAME=dapper
fi
if [ -f /etc/lsb-release ]; then
source /etc/lsb-release
m-a prepare
fi
#LC_ALL= LC_CTYPE= LC_MESSAGES= LANG= sh $DRIVER --buildpkg $DISTRIB_ID/$DISTRIB_CODENAME || (
LC_ALL= LC_CTYPE= LC_MESSAGES= LANG= sh $DRIVER --extract || (
rm -f $DRIVER
echo $DRIVER could not build Debian packages and has been deleted.
echo Please restart the script to try again.
exit 2
) || exit
cd fglrx-install
perl -pi -e 's/(XVERSIONMAX := )(\$\(basename \$\(XVERSION\)\).99)/${1}1:${2}/' packages/Debian/debian/rules
[ "$KV" == "2.6" ] && [ "$VER" == "8.22.5" -o "$VER" == "8.23.7" -o "$VER" == "8.24.8" ] && if [ "$(uname -r|grep -E '2.6.16|2.6.17')" != "" ]; then
patch common/lib/modules/fglrx/build_mod/firegl_public.c <<EOT
Index: firegl_public.c
@@ -361,13 +361,15 @@
} firegl_drm_stub_info_t;
static firegl_drm_stub_info_t firegl_stub_info;
-#if LINUX_VERSION_CODE < 0x020400
+#if LINUX_VERSION_CODE > 0x02060F
struct firegl_drm_stub_info_t *firegl_stub_pointer = NULL;
#define inter_module_put(x)
#define inter_module_unregister(x)
#define inter_module_get_request(x,y) firegl_stub_pointer
#define inter_module_register(x,y,z) do { firegl_stub_pointer = z; } while (0)
+#endif
/* This is a kludge for backward compatibility that is only useful in DRM(stub_open) */
+#if LINUX_VERSION_CODE < 0x020400
#define fops_put(fops) MOD_DEC_USE_COUNT
#define fops_get(fops) (fops); MOD_INC_USE_COUNT
#endif // LINUX_VERSION_CODE < 0x020400
@@ -2353,7 +2353,7 @@
int ATI_API_CALL __ke_no_iommu(void)
{
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,1)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,1) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16)
#ifdef CONFIG_GART_IOMMU
return no_iommu;
#else /* !CONFIG_GART_IOMMU */
EOT
patch common/lib/modules/fglrx/build_mod/2.6.x/Makefile <<EOT
Index: Makefile
@@ -1,4 +1,4 @@
-GCC_VER_MAJ = \$(shell \$(CC) --version | head -n 1 | sed -e 's/[^0-9. ]//g;s/^ *//;s/^\(.\)\..*\$\$/\1/')
+GCC_VER_MAJ = \$(shell \$(CC) -dumpversion | cut -f1 -d.)
obj-m += fglrx.o
fglrx-libs += libfglrx_ip.a.GCC\$(GCC_VER_MAJ)
@@ -24,36 +24,18 @@
# on first call from remote location we get into this path
# whilst on second call all is managed by the embedding kernel makefile
-KVER = \$(shell uname -r)
-# KVER = 2.6.0-0.test1.1.26custom
-
-ifeq (1,1)
-KDIR = /lib/modules/\$(KVER)/build
-else
-KDIR = /usr/src/linux-\$(KVER)
-endif
-PWD = \$(shell pwd)
fglrx-cfiles = \${fglrx-c-objs:.o=.c}
# default:: kmod_build
kmod_build:: \$(fglrx-libs) \$(fglrx-cfiles) \$(fglrx-hdrs) \$(drm-hdrs)
- \$(MAKE) -C \$(KDIR) SUBDIRS=\$(PWD) modules
-
-%.c:
- @ln -s ../\$@
-
-%.h:
- @ln -s ../\$@
-
-%.GCC\$(GCC_VER_MAJ):
- @ln -s ../\$@
+ \$(MAKE) -C \$(KDIR) SUBDIRS=\$(CURDIR) modules
# distclean:: clean
clean::
- rm -f *.c *.h *.o *.ko *.GCC* .??*
+ rm -f *.o *.ko .*.cmd
endif
EOT
fi
LC_ALL= LC_CTYPE= LC_MESSAGES= LANG= sh ati-installer.sh $VER --buildpkg $DISTRIB_ID/$DISTRIB_CODENAME
cd ..
rm -rf fglrx-install
rm -f /lib/modules/`uname -r`/kernel/drivers/char/drm/fglrx.*o
rm -f /lib/modules/`uname -r`/volatile/fglrx.*o
rm -f fglrx-installer_$VER-1_$ARCH.changes
rm -rf /usr/src/modules/fglrx
OLD_FGLRX=$(COLUMNS=200 dpkg -l|awk '/fglrx/ {print $2}')
[ -n "$OLD_FGLRX" ] && dpkg --purge $OLD_FGLRX
if [ -d /usr/lib/opengl ]; then
rm -rf /usr/lib/opengl
ldconfig
fi
if [ "$DISTRIB_ID" == "Ubuntu" ]; then
dpkg -i xorg-driver-fglrx_$VER-1_$ARCH.deb
dpkg -i fglrx-control_$VER-1_$ARCH.deb
dpkg -i fglrx-kernel-source_$VER-1_$ARCH.deb
m-a build fglrx-kernel-source
m-a install fglrx-kernel-source
else
dpkg -i fglrx-driver_$VER-1_$ARCH.deb
dpkg -i fglrx-control-qt3_$VER-1_$ARCH.deb
dpkg -i fglrx-kernel-src_$VER-1_$ARCH.deb
m-a build fglrx-kernel-src
m-a install fglrx-kernel-src
fi
update-modules -f
rm -rf /usr/src/modules/fglrx
rm -rf fglrx-install
rm -f /tmp/fglrx* /tmp/xorg-driver-fglrx* fglrx* xorg-driver-fglrx*
if [ -n "$INSTALLED" ]; then
DM=`cat /etc/X11/default-display-manager 2>/dev/null`
DM=`basename $DM 2>/dev/null`
if test -z "$DM"; then
test -e /etc/init.d/kdm && /etc/init.d/kdm stop
else
test -e /etc/init.d/$DM && /etc/init.d/$DM stop
fi
fi
rmmod radeon drm &>/dev/null
rmmod fglrx &>/dev/null
#rmmod agpgart &>/dev/null
perl -pi -e 's/^[\s]*radeon/#radeon/' /etc/modules
perl -pi -e 's/^[\s]*fglrx/#fglrx/' /etc/modules
if ! test -e /etc/X11/$X_CONF.1st; then
cp /etc/X11/$X_CONF /etc/X11/$X_CONF.1st
fi
#fglrxconfig
perl -p -e 's/^[\s]*Load\s*"GLcore"/#\tLoad "GLcore"/;
s/^[\s]*#*[\s]*Load\s*"dri"/\tLoad "dri"/;
s/^[\s]*#*[\s]*Load\s*"glx"/\tLoad "glx"/;
s/^[\s]*#*[\s]*Option\s*"Composite".*/#\tOption\t"Composite"\t"1"/;
s/^[\s]*Driver\s*"radeon"/\tDriver "fglrx"/g;
s/^[\s]*Driver\s*"fbdev"/\tDriver "fglrx"/g;
s/^[\s]*Driver\s*"vesa"/\tDriver "fglrx"/g;
s/^[\s]*Driver\s*"ati"/\tDriver "fglrx"/g;
s/DefaultColorDepth.*/DefaultColorDepth 24/;
s/^[\s]*Option\s*"sw_cursor"/\t#Option "sw_cursor"/;
s/^([\s]*Load\s*"extmod")/#\1\n\tSubSection "extmod"\n\t Option "omit xfree86-dga"\n\tEndSubSection/;
s/^.*UseInternalAGPGART.*\n?//g;
s/^.*VideoOverlay.*\n?//g;
s/^.*OpenGLOverlay.*\n?//g;
s/^.*MonitorLayout.*\n?//g;
s/^([\s]*Driver\s*"fglrx")/\1\n\tOption "UseInternalAGPGART" "yes"\n\tOption "VideoOverlay" "on"\n\tOption "OpenGLOverlay" "off"\n\tOption "MonitorLayout" "AUTO, AUTO"/g' \
< /etc/X11/$X_CONF.1st > /etc/X11/$X_CONF
lsmod|grep -q agpgart && perl -pi -e 's/^([\s]*Option\s*"UseInternalAGPGART").*/\1 "no"/g' /etc/X11/$X_CONF
[ "$CPU" == "x86_64" ] && perl -pi -e 's/^([\s]*Option\s*"UseInternalAGPGART").*/\1 "no"/g' /etc/X11/$X_CONF
[ "$LAPTOP" ] && perl -pi -e 's/^([\s]*Option\s*"MonitorLayout").*/\1 "LVDS, AUTO"/g' /etc/X11/$X_CONF
[ "$VER" == "8.16.20-1" -o "$VER" == "8.18.6-1" -o "$VER" == "8.18.8-1" -o "$VER" == "8.19.10-1" -o "$VER" == "8.20.8-1" -o "$VER" == "8.21.7-1" -o "$1" == "-r" ] && perl -pi -e 's/^.*Mode.ine.*\n?//g' /etc/X11/$X_CONF
sync
# added for 3.14.6 and above
if ! grep -q /dev/shm /proc/mounts; then
perl -pi -e 's|\n?$|\n|' /etc/fstab
perl -pi -e 's|.*tmpfs.*[\n]*||' /etc/fstab
echo tmpfs /dev/shm tmpfs defaults 0 0 >> /etc/fstab
mount /dev/shm
fi
if [ -n "$INSTALLED" ]; then
if test -z "$DM"; then
test -e /etc/init.d/kdm && /etc/init.d/kdm start
else
test -e /etc/init.d/$DM && /etc/init.d/$DM start
fi
else
cp /etc/X11/$X_CONF /etc/X11/$X_CONF.ati
nohup sh -c "/etc/init.d/xsession stop; sleep 5; rmmod radeon drm; modprobe fglrx; cp /etc/X11/$X_CONF.ati /etc/X11/$X_CONF; /etc/init.d/xsession start"
fi
Désolé c’est long mais l’url source ne répond plus ![]()
Je vais le garder sous la main :jap:
Et des balises quote ou code ça te disait pas :paf: ?
Ok se sera plsu clair avec des balises "code" ![]()
Ca marche mais c’est encore un peu le souc dans sid en ce moment. on ne change pas de version majeure de X tous les ans.
Il y a de nombreux problèmes triviaux de path qui ont changé (ben oui : le répertoire X11R6 devrait finir par être totalement vide et ne plsu exister étant donné qu’on est passé à R7…
Bref, avec qlqs ln -s, on arrive à faire fonctionner une sid à jour sans problème avec les derniers drivers ATI
Quand j’aurai le temps, je vais craquer et essayer d’installer ce fameau bureau 3D ![]()