Install AMD/ATI Driver in Kali Linux 1.x
I always had issues with ATI/Intel gfx cards in pretty much every version of Linux I've used. Kali is no different. Following guide would help to resolve the problem for everyone with similar issues. Many thanks to 'Sani Morphic' for his original post. Also big thanks goes to "http://wiki.debian.org/ATIProprietary" for their updates on Linux Header and ATIEventSD notes.
Note: This guide works fine with Kernel 3.7. (as available in official Kali repository).
I've kept a copy of this guide here: Install AMD ATI Driver (fglrx) in Kali Linux 1.x
Users who wish to try our AMD APP SDK, Pyrit and CAL++ to make GPU cracking faster, please read the following guides:
How to install AMD APP SDK in Kali Linux?
How to install CAL++ in Kali Linux?
How to install Pyrit in Kali Linux?
Note: Kali Linux 1.0.6 users running Kernel version 3.12.6
If you're a Kali Linux 1.0.6 users running Kernel version 3.12.6 following instructions will not work anymore. Follow these new instructions on how to Install AMD ATI proprietary driver (fglrx) in Kali Linux 1.0.6 running Kernel version 3.12.6
Step 1
Code:
apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev* xorg-driver-fglrx
Check your /etc/apt/sources.list
Step 2
Step 3
Code:
apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
apt-get install fglrx-driver fglrx-control fglrx-glx fglrx-atieventsd fglrx-modules-dkms
apt-get install fglrx-glx-ia32
...
Error! Bad return status for module build on kernel: 3.7-trunk-amd64 (x86_64)
Consult /var/lib/dkms/fglrx/12-6+point/build/make.log for more information.
Step 4 (download patch and patch)
Need to patch the kernel
Download patch from here (I've personally used this patch but users are advised to check/verify it before installing.)
Download and "fglrx-3.7.patch" and copy to /root
(Thanks to Henry Hermawan for posting this patch)
Copy the file fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb //check if amd6 architecture or i386, based on which version you're using filename might be slightly different
to /root
from
/var/cache/apt/archives
Code:
cp /var/cache/apt/archives/fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb /root
Step 5 (patch and repack)
Code:
mkdir -p extract/DEBIAN
dpkg-deb -x fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb extract/
dpkg-deb -e fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb extract/DEBIAN
cp fglrx-3.7.patch extract/usr/src/fglrx-12-6+point/
cp Downloads/fglrx-3.7.patch extract/usr/src/fglrx-12-6+point/
cd extract/usr/src/fglrx-12-6+point/
patch -p0 < fglrx-3.7.patch
patching file firegl_public.c
Hunk #1 succeeded at 3890 (offset -2 lines).
Hunk #2 succeeded at 3920 (offset -2 lines).
Hunk #3 succeeded at 3935 (offset -2 lines).
Hunk #4 succeeded at 3944 (offset -2 lines).
Hunk #5 succeeded at 3982 (offset -2 lines).
Hunk #6 succeeded at 4013 (offset -2 lines).
Hunk #7 succeeded at 4023 (offset -2 lines).
Hunk #8 succeeded at 4044 (offset -2 lines).
cd /root
mkdir build
dpkg-deb -b extract/ build/
dpkg-deb: building package `fglrx-modules-dkms' in `build//fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb'.
cd build
dpkg -i *.deb
...
DKMS: install completed.
Generate xorg configuration
Code:
aticonfig --initial -f
Step 6 (radeon and reboot)
Code:
leafpad /boot/grub/grub.cfg
you see this:
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 3.7-trunk-amd64' --class debian --class gnu-linux --class gnu --class os {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 7f79eea2-1668-407f-b7ed-d5613fecd26c
echo 'Loading Linux 3.7-trunk-amd64 ...'
linux /boot/vmlinuz-3.7-trunk-amd64 root=UUID=7f79eea2-1668-407f-b7ed-d5613fecd26c ro initrd=/install/gtk/initrd.gz quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.7-trunk-amd64
}
add radeon.modeset=0 in the end of the following line
linux /boot/vmlinuz-3.7-trunk-amd64 root=UUID=7f79eea2-1668-407f-b7ed-d5613fecd26c ro initrd=/install/gtk/initrd.gz quiet
So the line above becomes this:
linux /boot/vmlinuz-3.7-trunk-amd64 root=UUID=7f79eea2-1668-407f-b7ed-d5613fecd26c ro initrd=/install/gtk/initrd.gz quiet radeon.modeset=0
Note: "fee64a58-2e36-43f5-962d-8c33f936d452" UUID would be different for every PC. Use your one here.
Save and exit
Feedback is most welcome.
Edit Note: A version of this Guide will be added here including patch file.
kernel 3.14 and catalyst 14.4
Hello,
Can you help with installing AMD Catalyst™ 14.4 Proprietary Linux x86 Display Driver on 3.14-kali1-686-pae?
Everything updated and upgraded.
I downloaded zip file here http://support.amd.com/en-us/downloa...alyst-packages.
Unpacked it and ran using ./ .
I chose automatic install.
Then installation ends with an error message.
Here is the errorlog file:
Code:
Supported adapter detected.
Check if system has the tools required for installation.
Uninstalling any previously installed drivers.
Unloading radeon module...
Unloading drm module...
Error: Module drm is in use by: ttm i915 drm_kms_helper
[Message] Kernel Module : Trying to install a precompiled kernel module.
[Message] Kernel Module : Precompiled kernel module version mismatched.
[Message] Kernel Module : Found kernel module build environment, generating kernel module now.
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.a .??* *.symvers
make -C /lib/modules/3.14-kali1-686-pae/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-3.14-kali1-686-pae'
CC [M] /lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function ‘KCL_GetEffectiveUid’:
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1787:5: error: incompatible types when returning type ‘kuid_t’ but ‘KCL_TYPE_Uid’ was expected
/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:1793:1: warning: control reaches end of non-void function [-Wreturn-type]
make[4]: *** [/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o] Error 1
make[3]: *** [_module_/lib/modules/fglrx/build_mod/2.6.x] Error 2
make[2]: *** [sub-make] Error 2
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.14-kali1-686-pae'
make: *** [kmod_build] Error 2
build failed with return value 2
[Error] Kernel Module : Failed to compile kernel module - please consult readme.
[Reboot] Kernel Module : update-initramfs
This installation updates xorg.conf to this:
Code:
Section "ServerLayout"
Identifier "aticonfig Layout"
Screen 0 "aticonfig-Screen[0]-0" 0 0
EndSection
Section "Module"
EndSection
Section "Monitor"
Identifier "aticonfig-Monitor[0]-0"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection
Section "Device"
Identifier "aticonfig-Device[0]-0"
Driver "fglrx"
BusID "PCI:3:0:0"
EndSection
Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-0"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
After restart i have blackscreen with cursor blinking. When i then clear xorg.conf everything runs like before. I also tried to install 14.6 beta drivers but my discrete adapter wasn't recognized.
Thanks for help.