2008年3月9日 星期日

Install ATI driver

1.首先到 ATI 下載最新的 7.12 (8.443) X86驅動程式


2.編譯前的準備工作

sudo apt-get install module-assistant build-essential fakeroot dh-make debhelper \
debconf libstdc++5 linux-headers-generic dkms
LANG=C
sudo apt-get update
sudo apt-get install module-assistant build-essential fakeroot dh-make debhelper debconf libstdc++5 linux-headers-$(uname -r)


3.刪除之前的函式庫

sudo rm /usr/lib/libGL.so*


4.編譯deb

首先cd到放置驅動程式的目錄裡

gusty 7.10:
bash *.run --buildpkg Ubuntu/gutsy

Feisty 7.04:
bash *.run --buildpkg Ubuntu/feisty


5.屏蔽fglrx核心模組

如果安裝過linux-restricted-modules,那麼此步必做!
否則可以跳過,不過一般都要做.

sudo gedit /etc/default/linux-restricted-modules-common

將裡面的

DISABLED_MODULES=""

改成

DISABLED_MODULES="fglrx"


6.安裝剛剛編譯好的deb

sudo dpkg -i xorg-driver-fglrx_*.deb fglrx-kernel-source*.deb fglrx-amdcccle*.deb


7.移除舊的fglrx

如果是第一次安裝,會提示找不到該文件的訊息.
別理他,照做就是了..

sudo rm /usr/src/fglrx-kernel*.deb
sudo apt-get -f install


8.編譯內核模組並安裝

sudo module-assistant prepare
sudo module-assistant update
sudo module-assistant build fglrx
cd /usr/src
sudo dpkg -i fglrx-kernel-*.deb
sudo depmod -a


9.配置驅動程式

sudo aticonfig --initial -f
sudo aticonfig --ovt=Xv

跟在/etc/X11/xorg.conf裡手動添加以下兩句是一樣的意思
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"


10.把以前xorg.conf裡不支援aiglx的語句修改掉。

sudo gedit /etc/X11/xorg.conf

將裡面的

Section "Extensions"
Option "Composite" "0"
EndSection

Section "ServerFlags"
Option "AIGLX" "off"
EndSection

改成如下

Section "Extensions"
Option "Composite" "1"
EndSection

Section "ServerFlags"
Option "AIGLX" "on"
EndSection


11.按下Ctrl+Alt+Backspace重新啟動X-Window,以確認驅動程式是否安裝好

fglrxinfo

display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI MOBILITY RADEON X700
OpenGL version string: 2.1.7170 Release
#秀出ATI顯示卡型號及相關資訊才是正確的

glxinfo | grep render

direct rendering: Yes
OpenGL renderer string: ATI MOBILITY RADEON X700
#如果開啟了xgl,那麼這裡一定是No,還有其他的一些訊息


12.開啟3D桌面,讓Compiz Fusion工作

SKIP_CHECKS=yes compiz

#看看將視窗最大最小化時,是否有3D的效果?
如果有,就表示成功囉..

mkdir -p ~/.config/compiz && echo SKIP_CHECKS=yes >> ~/.config/compiz/compiz-manager

#重啟一下看看是不是開機自動開啟了桌面特效,應該這樣就可以了。
如果不行的話,手動點擊桌面特效裡面的選項,把桌面特效給打開。


  
常見錯誤:

1.如果你碰到2D加速很慢的情況,在/etc/X11/xorg.conf 的 Device section
(就是有fglrx的那段)中添上

Option "XaaNoOffscreenPixmaps"


2.如果沒有3D加速,可嘗試

sudo mkdir /lib/modules/$(uname -r)/volatile
sudo ln -sf /lib/modules/$(uname -r)/misc/fglrx.ko /lib/modules/$(uname-r)/volatile/fglrx.ko
 

3.如果說/usr/X11R6/lib/modules/dri/fglrx_dri.so缺失,則執行

sudo ln -s /usr/lib/ /usr/X11R6/lib/modules


4.如果執行fglrxinfo出現 libGL.so.1: cannot open shared object file,則

sudo ln /usr/lib/libGL.so.1.2 /usr/lib/libGL.so.1


5.如果還有其他問題,比如nforce3的晶片(主要是asus的K8N),
說你仍然運行於mesa,無3D加速,可以看這裡:

http://wiki.cchtml.com/index.php/Troubleshooting


  
參考資料:

http://forum.ubuntu.org.cn/viewtopic.php?t=26188
http://wiki.cchtml.com/index.php/Ubuntu_Gutsy_Installation_Guide
 
  
  
安裝時遇到的狀況:

1.全部完成重開機後,/etc/X11/xorg.conf 裡會多出一行敘述!

Section "Extensions"
Option "Composite" "1"
Option "Composite" "0" #多餘的,請刪除..
EndSection


2.第一次安裝失敗重新安裝,在安裝編譯好的deb時出現錯誤

正在設定 fglrx-kernel-source (8.443.1-1) ...
Adding Module to DKMS build system

Error! DKMS tree already contains: fglrx-8.443.1
You cannot add the same module/version combo more than once.
Doing initial module build

Error! This module/version has already been built on: 2.6.22-14-generic
Directory: /var/lib/dkms/fglrx/8.443.1/2.6.22-14-generic/i686
already exists. Use the dkms remove function before trying to build again.
Installing initial module

Error! This module/version combo is already installed
for kernel: 2.6.22-14-generic (i686)
Done.

#由於找不到dkms的相關說明,一值無法解決這個問題,只好還原系統重新安裝.


2.一樣是在安裝編譯好的deb時出現錯誤!

正在設定 fglrx-amdcccle (8.443.1-1) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place
/sbin/ldconfig.real: /usr/lib/libGL.so.1.2 is not a symbolic link
/sbin/ldconfig.real: /usr/lib/libGL.so.1 is not a symbolic link

#參考ATI wiki上的步驟,在編譯前先將原來的函式庫刪除就OK了!

Reference link:

Installing Ubuntu 7.10 (Gutsy Gibbon) on a Thinkpad T60

Fglrx

Ubuntu Gutsy Installation Guide