Для исправления ошибки мне нужно проверить, не возникает ли еще ошибка в ядре 3.7rc7 из основной ветки разработки, и, поскольку ошибка связана с fglrx, мне нужно установить и более новую версию, которая работает с ядром 3.7. Как мне сделать это шаг за шагом?
Я получил свой ответ, объединив разные посты на ubuntuforums. В этом руководстве будет использоваться версия fglrx 12.10 с сайта ati. Все эти шаги выполняются в терминале. В этом руководстве предполагается, что у вас установлено ядро 3.7rc7, выполнив шаги, описанные в https://wiki.ubuntu.com/KernelMainlineBuilds . Также предполагается, что вы используете Ubuntu 12.04, однако инструкции для 12.10 очень похожи.
Создайте временный каталог и перейдите в этот каталог:
mkdir ~/temp
cd ~/temp
Загрузите драйвер ati и патч:
wget http://www2.ati.com/drivers/linux/amd-driver-installer-catalyst-12.10-x86.x86_64.zip
wget http://catalyst.apocalypsus.net/files/arch-fglrx-3.7.patch
Извлеките zip-архив и сделайте исполняемый файл .run
:
unzip amd-driver-installer-catalyst-12.10-x86.x86_64.zip
chmod +x amd-driver-installer-catalyst-12.10-x86.x86_64.run
Извлеките файл .run
из каталога ./src
:
Перейдите в каталог ./src
и примените патч:
cd ./src
patch -Np1 --verbose < ../arch-fglrx-3.7.patch
Теперь соберите пакеты deb для 12.04 (точные), эти перейдет в родительский каталог
./ati-installer.sh 9.002 --buildpkg Ubuntu/precise
Перейдите в родительский каталог и установите файлы
cd ../
sudo dpkg -i *.deb
Если вы получили сообщение об ошибке version.h
и что сборка модулей dkms не удалась, это связано с тем, что файл version.h не помещен в ядро 3.7rc7. Чтобы это исправить, сделайте
ln -s /usr/src/linux-headers-3.7.0-030700rc7-generic/include/generated/uapi/linux/version.h /usr/src/linux-headers-3.7.0-030700rc7-generic/include/linux/version.h
, а затем снова удалите и установите fglrx
sudo apt-get remove "fglrx*"
sudo dpkg -i *.deb
Сделайте резервную копию вашего xorg.conf и сгенерируйте новый
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
sudo aticonfig --initial -f
Перезагрузите его, и оно должно работать!