Debian Installation Guide: Difference between revisions

From cchtml.com
 
No edit summary
 
(145 intermediate revisions by 76 users not shown)
Line 1: Line 1:
== Which method? ==
2007-11, see http://wiki.debian.org/AtiHowTo
There are two methods that can be used to install the fglrx driver in Debian. The first, and recommended way is to build native Debian packages directly from the ATI installer. The second, which may be easier for some, but is not recommended in general, is to convert the RedHat RPMs to Debian packages and then install.  Both methods are documented here.
----
As of November 2005, ATI's drivers are in the non-free area of Debian. Make sure your /etc/apt/sources.list contains "contrib non-free" as well as main. You will, however, have to build your own kernel modules.


== Method 1: Generating/Installing Debian packages for the newer 8.19.x drivers ==
''Warning: do not mix the non-free packages with the packages created by the installer as they will conflict in non-obvious ways.  Before switching from one method to another, completely remove all fglrx-related packages.  Never do upgrade from one method to another directly!''
=== Download the ATI driver installer ===
You download the driver packages directly from [http://www.ati.com ATI].


=== Build the Debian packages ===
The buildpackage will fail on Debian 6.0 (Squeeze). They're quite broken.
Change to the download directory. You might get some errors regarding dependencies during the dpkg process.  You can ignore them since they should be resolved when you run the ''upgrade'' step.
<pre>
sudo apt-get install module-assistant build-essential fakeroot dh-make debconf
sudo sh ./ati-driver-installer-8.19.10-i386.run --buildpkg Debian/sarge (or sid, etch, etc.)
sudo dpkg -i fglrx-control_8.19.10-1_i386.deb
sudo dpkg -i fglrx-kernel-source_8.19.10-1_i386.deb
sudo dpkg -i xorg-driver-fglrx_8.19.10-1_i386.deb
sudo apt-get -f upgrade
</pre>
 
=== Compile the kernel driver ===
<pre>
sudo module-assistant prepare
sudo module-assistant update
sudo module-assistant a-i fglrx
</pre>


=== Update the xorg.conf file ===
In addition, the generic installer will fail if your / partition has less space available than it wants, even if all of the files would be placed on a different partition (such as /usr).
== Update the xorg.conf file (Configuration) ==
<pre>
<pre>
sudo aticonfig --initial
sudo aticonfig --initial
</pre>
</pre>
Now restart X, or reboot for the driver changes to take effect.
Now restart X, or reboot for the driver changes to take effect.


=== Confirm that it worked ===
== Confirm that it worked ==
<pre>
<pre>
$ fglrxinfo
$ fglrxinfo
Line 40: Line 24:
</pre>
</pre>


== Method 2: Installing from RPM with Alien ==
If it didn't work, you may need to run:
'''Note: This is a quick guide and it needs a rewriteBut it works'''
<pre>
# mkdir -p /usr/X11R6/lib/modules/dri
# ln -s /usr/lib/dri/fglrx_dri.so /usr/X11R6/lib/modules/dri
</pre>
 
Thanks to Maciej Matysiak for the clear debug [http://lists.debian.org/debian-amd64/2006/02/msg00217.html here] and solution [http://lists.debian.org/debian-amd64/2006/02/msg00311.html here].
 
If it's still not working, try:
<pre>
# rm /usr/lib/libGL.so*
# rm /usr/X11R6/lib/libGL.so*
# cd /usr/X11R6/lib
# cp /usr/lib/fglrx/diversions/lib/libGL.so.1.2 .
# ln -s libGL.so.1.2 libGL.so.1
# ldconfig
</pre>
and confirm that 'ldd /usr/bin/fglrxinfo' is pointing to the right one.
 
 
People seem to be experiencing a broken libGL.so.1 after installing 8.41 on Debian/etchIf `amdcccle` complains that libGL.so.1 does't exist, DONT DELETE /usr/lib/libGL.so.1.2 LIKE IT SAYS ABOVE.  Make symbolic link to libGL.so.1.2 (which is included in fglrx package - 14 megs in size):
<pre>
# cd /usr/lib
# ln -s libGL.so.1.2 libGL.so.1
</pre>
 
 
[[Category:Installation Documentation]]
 
This work fine for ATI mobility radeon 1400
 
(make backup the olds xorg.* files in your folder)
 
<pre>
$ cp /etc/X11/xorg.conf /home/username/xorg.conf.old
$ cp /var/log/Xorg.0.log /home/username/Xorg.0.log.old
</pre>
 
(add contrib non-free in repositories)


=== Download the RPMs ===
This is the way I prefer but it's not the best way. Download one of the .rpm packages. Than convert it to an .deb package with alien.
<pre>
<pre>
alien -d fglrx-*.rpm
$ apt-get update
$ apt-get install module-assistant build-essential fakeroot dh-make debconf bzip2
</pre>
</pre>


=== Install the converted Debian package ===
(from www.amd.com download the current version of driver for your ATI)
Now install it with
 
<pre>
<pre>
dpkg -i --force-all ./fglrx_*.deb
$ sh ./ati-driver-installer-8.40.4-x86.x86_64.run --buildpkg Debian/lenny
</pre>                       
 
<pre>
$ apt-get install fglrx-amdcccle_8.40.4-1_i386.deb
$ apt-get install fglrx-driver-_8.40.4-1_i386.deb
$ apt-get install fglrx-driver-dev_8.40.4-1_i386.deb
$ apt-get install fglrx-kernel-src_8.40.4-1_i386.deb
$ apt-get -f upgrade
$ apt-get update
</pre>
</pre>
Replace the ''*'' with the version string of the package.


=== Build the kernel driver ===
 
Now you must change do the following.
 
<pre>
<pre>
cd /lib/modules/fglrx/build_mod/
$ module-assistant prepare
sh make.sh
$ module-assistant update
cd ..
$ module-assistant a-i fglrx
sh ./make_install.sh
</pre>
</pre>
This will build and install the kernel module.


=== Update the X server config file ===
<pre>
<pre>
sudo aticonfig --initial
$ aticonfig --initial
</pre>
</pre>


Now restart X, or reboot for the driver changes to take effect.
(reboot computer)


=== Why isn't this way recommended? ===
<pre>
The ''--force-all'' parameter ignores all errors from the package system. This is necessary because there is a conflict with one package from the X-Window system.  When you update your Debian system and if there is an update for the X-Server, then apt will stop the update process. Now you need to look at which packages caused the update process to stop.  Go to ''/var/cache/apt/archives/'' and than do ''dpkg -i --force-all my-broken-package'' where ''my-broken-package'' should be replaced by the package that interrupted the update process. Now you can finish updating the rest of your system as you did before. However, after this you will have to re-install the fglrx package, as above.
$ fglrxinfo
</pre>


[[Category:Installation Documentation]]
<pre>
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON 9700 Generic
OpenGL version string: 1.3.5461 (X4.3.0-8.19.10)
</pre>

Latest revision as of 22:25, 28 February 2013

2007-11, see http://wiki.debian.org/AtiHowTo


As of November 2005, ATI's drivers are in the non-free area of Debian. Make sure your /etc/apt/sources.list contains "contrib non-free" as well as main. You will, however, have to build your own kernel modules.

Warning: do not mix the non-free packages with the packages created by the installer as they will conflict in non-obvious ways. Before switching from one method to another, completely remove all fglrx-related packages. Never do upgrade from one method to another directly!

The buildpackage will fail on Debian 6.0 (Squeeze). They're quite broken.

In addition, the generic installer will fail if your / partition has less space available than it wants, even if all of the files would be placed on a different partition (such as /usr).

Update the xorg.conf file (Configuration)

sudo aticonfig --initial

Now restart X, or reboot for the driver changes to take effect.

Confirm that it worked

$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON 9700 Generic
OpenGL version string: 1.3.5461 (X4.3.0-8.19.10)

If it didn't work, you may need to run:

# mkdir -p /usr/X11R6/lib/modules/dri
# ln -s /usr/lib/dri/fglrx_dri.so /usr/X11R6/lib/modules/dri

Thanks to Maciej Matysiak for the clear debug here and solution here.

If it's still not working, try:

# rm /usr/lib/libGL.so*
# rm /usr/X11R6/lib/libGL.so*
# cd /usr/X11R6/lib
# cp /usr/lib/fglrx/diversions/lib/libGL.so.1.2 .
# ln -s libGL.so.1.2 libGL.so.1
# ldconfig

and confirm that 'ldd /usr/bin/fglrxinfo' is pointing to the right one.


People seem to be experiencing a broken libGL.so.1 after installing 8.41 on Debian/etch. If `amdcccle` complains that libGL.so.1 does't exist, DONT DELETE /usr/lib/libGL.so.1.2 LIKE IT SAYS ABOVE. Make symbolic link to libGL.so.1.2 (which is included in fglrx package - 14 megs in size):

# cd /usr/lib
# ln -s libGL.so.1.2 libGL.so.1

This work fine for ATI mobility radeon 1400

(make backup the olds xorg.* files in your folder)

$ cp /etc/X11/xorg.conf /home/username/xorg.conf.old
$ cp /var/log/Xorg.0.log /home/username/Xorg.0.log.old

(add contrib non-free in repositories)

$ apt-get update
$ apt-get install module-assistant build-essential fakeroot dh-make debconf bzip2

(from www.amd.com download the current version of driver for your ATI)

$ sh ./ati-driver-installer-8.40.4-x86.x86_64.run --buildpkg Debian/lenny
$ apt-get install fglrx-amdcccle_8.40.4-1_i386.deb
$ apt-get install fglrx-driver-_8.40.4-1_i386.deb
$ apt-get install fglrx-driver-dev_8.40.4-1_i386.deb
$ apt-get install fglrx-kernel-src_8.40.4-1_i386.deb
$ apt-get -f upgrade
$ apt-get update


$ module-assistant prepare
$ module-assistant update
$ module-assistant a-i fglrx
$ aticonfig --initial

(reboot computer)

$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON 9700 Generic
OpenGL version string: 1.3.5461 (X4.3.0-8.19.10)