Difference between revisions of "Debian Installation Guide"

From cchtml.com
Jump to: navigation, search
(Method 1: Installing from Debian non-free)
m (Protected "Debian Installation Guide": Excessive vandalism ([edit=autoconfirmed] (expires 00:04, 16 September 2012 (UTC)) [move=autoconfirmed] (expires 00:04, 16 September 2012 (UTC))))
(48 intermediate revisions by 32 users not shown)
Line 5: Line 5:
 
''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!''
 
''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.
  
== Which install method? ==
+
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).
There are two methods that can be used to install the fglrx driver in Debian.  The first, and recommended way is to use the native Debian packages directly from the non-free repository.  The second, which may be required for newly release drivers, is to generate the Debian packages directly from the ATI installer.  Both methods are documented here.  After the packages are installed, the remaining steps are common, regardless of the install method chosen.
+
 
+
doors.txt;10;15
+
 
+
=== Method 2: Generating/Installing Debian packages from the ATI installer ===
+
==== Download the ATI driver installer ====
+
Download the driver packages directly from [http://www.ati.com ATI]. You need to download the ATI [https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-8.38.7-x86.x86_64.run installer], not the RPM packages for this method to work.
+
 
+
I cannot recommend the latest release ati-driver-installer-8-8-x86.x86_64.run so I down graded to ati-driver-installer-8-7-x86.x86_64.run after many crashes and corrupted screens, so far this version is better for me. still more testing to do
+
 
+
==== Build the Debian packages ====
+
Change to the download directory.
+
<pre>
+
su
+
cd ~
+
apt-get install module-assistant build-essential fakeroot dh-make debconf bzip2 wget libstdc++5
+
wget -c https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/64bit/ati-driver-installer-8.42.3-x86.x86_64.run
+
./ati-driver-installer-8.42.3-x86.x86_64.run --extract fglrx
+
cd fglrx
+
cd arch/x86_64/usr/X11R6
+
ln -s lib64 lib
+
## One more link needed for 8.2
+
## begin 8.2
+
ln -sf libfglrx_gamma.so.1.0 lib/libfglrx_gamma.so.1
+
## end 8.2 ;-)
+
cd ~-
+
./packages/Debian/ati-packager.sh --buildpkg etch #replace with lenny or sid when appropriate
+
cd ..
+
dpkg -i fglrx-driver_8.42.3-1_amd64.deb fglrx-driver-dev_8.42.3-1_amd64.deb fglrx-kernel-src_8.42.3-1_amd64.deb fglrx-amdcccle_8.42.3-1_amd64.deb
+
</pre>
+
The installer has a script that tries to clone a directory that was removed in this version of the driver. Luckily, it was because the same directory was already located in a different directory. This does add a few extra steps, but this should work for everyone. Once complete, you should proceed to the configuration section.
+
 
+
==== Updated for Catalyst 8.2/Etch ====
+
 
+
Build the packages in /var/tmp directory:
+
<pre>
+
su -
+
cd /var/tmp
+
apt-get install module-assistant build-essential fakeroot dh-make debconf bzip2 wget
+
wget -c https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-8-02-x86.x86_64.run
+
sh ati-driver-installer-8-02-x86.x86_64.run --buildpkg Debian/etch
+
</pre>
+
 
+
==== Install the driver ====
+
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 dpkg -i fglrx-control-qt3_8.24.8-1_i386.deb
+
sudo dpkg -i fglrx-kernel-src_8.24.8-1_i386.deb
+
sudo dpkg -i fglrx-driver-dev_8.24.8-1_i386.deb
+
sudo apt-get -f upgrade
+
</pre>
+
 
+
A cruder way would be just calling <pre> dpkg -i fglrx-*.deb </pre>
+
 
+
==== Updated for Catalyst 8.2 ====
+
 
+
Just install the newly created debs from /var/tmp dir:
+
<pre>
+
dpkg -i fglrx-driver_*.deb fglrx-driver-dev_*.deb fglrx-kernel-src_*.deb fglrx-amdcccle_*.deb
+
</pre>
+
 
+
If amdccle package installation fails on 64-bit systems, do:
+
 
+
<pre>
+
sudo apt-get -f upgrade
+
</pre>
+
 
+
Afterwards, proceed with kernel module compilation and installation.
+
 
+
== Compile the kernel driver ==
+
Before do this, MAKE SURE you have deleted /usr/src/fglrx-kernel*.deb maybe generated by another installation.
+
In Debian lenny this is unnecessary - it just compiles and installs the most recent fglrx*.deb package. I would assume this is the case with most up-to-date distributions but to play on the safe side you could remove any leftovers of previous builds.
+
<pre>
+
sudo module-assistant prepare
+
sudo module-assistant update
+
sudo module-assistant a-i fglrx
+
</pre>
+
 
+
=== Observed error messages ===
+
 
+
'''1.'''
+
 
+
What does this error message below refer to ? It is unclear where to follow-up for this error 2/Fehler 2 message.
+
 
+
<pre>
+
                    |  dh_testdir                                                                │
+
                    │ /usr/bin/make -C /lib/modules/2.6.11/source SUBDIRS=/usr/src/modules/fglrx │
+
                    │ /bin/sh: /usr/src/linux-2.6.11/scripts/gcc-version.sh: Datei oder Verzeich │
+
                    │ make[1]: Entering directory `/usr/src/linux-2.6.11'                        │
+
                    │ make[2]: scripts/Makefile.build: Datei oder Verzeichnis nicht gefunden    │
+
                    │ make[2]: *** Keine Regel, um »scripts/Makefile.build« zu erstellen.  Schlu │
+
                    │ make[1]: *** [_module_/usr/src/modules/fglrx] Fehler 2                    │
+
                    │ make[1]: Leaving directory `/usr/src/linux-2.6.11'                        │
+
                    │ make: *** [build] Fehler 2                   
+
</pre>
+
 
+
<pre>
+
(II) LoadModule: "fglrx"
+
(II) Loading /usr/lib/xorg/modules/drivers/fglrx_drv.so
+
dlopen: libstdc++.so.5: cannot open shared object file: No such file or directory
+
(EE) Failed to load /usr/lib/xorg/modules/drivers/fglrx_drv.so
+
(II) UnloadModule: "fglrx"
+
(EE) Failed to load module "fglrx" (loader failed, 7)
+
</pre>
+
 
+
'''Solution:'''
+
Install a newer C library and recompile the kernel:
+
<pre>
+
sudo apt-get install libstdc++5
+
</pre>
+
 
+
'''2.'''
+
 
+
In Debian Lenny the compiling process might fail. This occurs because Debian downloads another version 1:8-5-1 as opposed to the newest version from ATI 8.501-1 (1/07/2008). This messes up the compiling
+
process. If you must know this occurs because the command ''m-a a-i'' automatically does m-a prepare, get, build, install. If you do m-a prepare, build, install fglr , without get this will not happen and
+
you can skip the solution below.
+
 
+
'''Solution:''' Disable your repositories temporarily just for the compiling bit. Compile the source using module assistant. Then do:
+
 
+
<pre>
+
$ aptitude hold fglrx-amdcccle fglrx-driver fglrx-kernel-src
+
</pre>
+
 
+
You can do the latter in ncurses by doing the following in order:
+
type, as root, aptitude and press enter; pres "/" and type fglrx; you will see 3 packages select each with the mouse or using the arrow keys and pres "=" or alternatively press package from the menu and select hold.
+
Finally enable your repositories once again.
+
 
+
 
== Update the xorg.conf file (Configuration) ==
 
== 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.
  
Line 184: Line 58:
  
 
<pre>
 
<pre>
$ cp /etc/X11/xorg.conf /home/username/corg.conf.old
+
$ cp /etc/X11/xorg.conf /home/username/xorg.conf.old
 
$ cp /var/log/Xorg.0.log /home/username/Xorg.0.log.old
 
$ cp /var/log/Xorg.0.log /home/username/Xorg.0.log.old
 
</pre>
 
</pre>
Line 195: Line 69:
 
</pre>
 
</pre>
  
(from www.amd.com download the courent version of driver for your ATI)
+
(from www.amd.com download the current version of driver for your ATI)
  
 
<pre>
 
<pre>

Revision as of 18:04, 1 September 2012

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)