mercoledì 9 gennaio 2013

Installazione driver video AMD Catalyst su Ubuntu 12.04 a 64 bit

La prima cosa che ho dovuto affrontare dopo l'upgrade forzato a Ubuntu 12.04 è stata l'installazione del driver della scheda video, una ATI Mobility Radeon HD 4650 di AMD.

Il fatto è noto: AMD ha deciso di modificare il supporto Linux alle schede video Radeon HD della serie 2000 - 3000 - 4000, di fatto azzerandolo. Niente più nuovi driver per queste schede, niente più compatibilità assicurata con le future versioni di Ubuntu. I Catalyst 12.6 sono gli ultimi driver a supportare la ATI Mobility Radeon HD 4650 del mio Dell 1747.

Questo significa che una scheda video AMD con 2 anni e mezzo di di vita è già abbandonata a se stessa: gli utenti Nvidia se la passano molto meglio, hanno supporto per schede con quasi 10 anni di vita.

In questo post voglio mostrarvi come ho installato i driver AMD Catalist 12.6 scaricati dal sito AMD su Ubuntu 12.04 a 64 bit creandone dei comodi pacchetti deb.

Personalmente sconsiglio l'uso dei driver fglrx disponibili nel repository di Ubuntu e installabili direttamente da "Driver aggiuntivi".

È vero che sempre dei Catalyst si tratta, e hanno anche la comodità di essere facilmente installabili, ma oltre ad essere una versione più vecchia rispetto ai 12.6, sul mio portatile si sono rivelati instabili con frequenti blocchi del sistema al momento dello spegnimento, sopratutto se prima di spegnere avevo usato la sospensione.

Con i 12.6 ciò avviene raramente, ma mediamente almeno una volta al mese ancora ci tengono a ricordarmi che la cosa non è del tutto risolta.

Le istruzioni per l'installazione degli AMD Catalist 12.6 sono molto semplici.


Iniziate con lo scaricarli dal sito AMD, poi installate da terminale il necessario per la creazione dei pacchetti deb:

sudo apt-get install dkms build-essential cdbs dh-make dkms execstack dh-modaliases fakeroot libqtgui4

sudo apt-get install ia32-libs-multiarch:i386 lib32gcc1 libc6-i386
sudo apt-get install ia32-libs

Terminata l'installazione dei pacchetti:

cd /usr
sudo ln -svT lib /usr/lib64

Controllate se ci sono moduli fgrlx in blacklist con:

sudo gedit /etc/modprobe.d/blacklist-local.conf

e commentateli mettendo il carattere cancelletto (#) ad inizio riga. Dopo aver salvato, portatevi nella directory dove avete salvato il file d'installazione scaricato dal sito AMD e date i comandi:

chmod +x amd-driver-installer-12.6-legacy-x86.x86_64.run
sudo sh ./amd-driver-installer-12.6-legacy-x86.x86_64.run --buildpkg Ubuntu/precise

Dovrete aspettare un po', la creazione dei pacchetti deb può essere lunga (dipende dal vostro sistema).Può succedere che durante la creazione dei pacchetti otteniate un messaggio di questo tipo:

Unable to resolve  can't parse dependency libobasis35-en_us
 can't parse dependency libobasis35-en_us-calc
 can't parse dependency libobasis35-en_us-res
 can't parse dependency libobasis35-en_us-writer
 can't parse dependency libobasis35-en_us-math
 can't parse dependency libobasis35-en_us-base.  Please manually install and try again.


Anche se sembra tutto fermo la compilazione va avanti e nel mio caso è andata a buon fine.

Aspettate qualche minuto per vedere se anche a voi si completa correttamente, nel frattempo dovreste sentire comunque il vostro disco rigido che frulla abbondantemente, segno che la creazione dei pacchetti sta proseguendo.

Andata a buon fine la creazione dei pacchetti deb, se è installata una precedente versione dei Catalyst disinstallatela con

sudo aticonfig --uninstall

oppure, se ottenete qualche errore, provate con

sudo sh amd-driver-installer-12.6-legacy-x86.x86_64.run --uninstall

Se ancora ottenete errori, uscite dalla directory in cui vi trovate con

cd ..

per non avere errori con il prossimo comando, poi provate con:

sudo apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*

A questo punto dovreste essere riusciti a disinstallare in qualche modo i vecchi driver, se siete usciti dalla directory di creazione dei pacchetti rientrate con

cd -

e installate i nuovi driver dai pacchetti appena creati con:

sudo dpkg -i fglrx*.deb
sudo aticonfig --initial

Infine riavviate il sistema.