dkms seems to be badly broken. I was able to successfully install the official 8.12 ATI driver under Intrepid, but can't make it work with a kernel newer than the stock Intrepid kernel (2.6.27-9).
'dkms status' shows:
fglrx, 8.561, 2.6.27-9-generic, x86_64: installed
So I'm thinking if it this is ok then maybe 2.6.28 isn't a stretch, but:
'dkms build -k 2.6.28 --kernelsourcedir /usr/src/linux-2.6.28 -m fglrx -v 8.561' yields( between dashed lines):
----------------------------------------------
Preparing kernel 2.6.28 for module build:
(This is not compiling a kernel, just preparing kernel symbols)
Storing current .config to be restored when complete
Running Generic preparation routine
make mrproper.......(bad exit status: 2)
using /usr/src/linux-2.6.28/.config
(I hope this is the correct config for this kernel)
make oldconfig.....
make prepare-all....(bad exit status: 2)
Building module:
cleaning build area....
pushd /var/lib/dkms/fglrx/8.561/build; sh make.sh --nohints --uname_r=2.6.28; popd....
Error! Build of fglrx.ko failed for: 2.6.28 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/fglrx/8.561/build/ for more information.
----------------------------------------------
One of the first hints that dkms is floundering are the nonsensical messages that it spits out. make.log in fact yields nothing of value, it's make.sh.log that we need to be interested in. That file shows:
----------------------------------------------
Error:
kernel includes at /lib/modules/2.6.28/build/include do not match current kernel.
they are versioned as ""
instead of "2.6.28".
you might need to adjust your symlinks:
- /usr/include
- /usr/src/linux
----------------------------------------------
Again more nonsense. So what if the includes don't match the current kernel?? The includes specified by "--kernelsourcedir" most definitely match the target kernel as required per the dkms man page. And there is nothing wrong with the /lib/modules/2.6.28/build symlink. The "linux" symlink is fine too. I have no idea what symlink is being referred to by "/usr/include". Those are the headers for the current kernel. They could be symlinked, but typically are not since one usually provides the header path explicitly when building any app that requires the headers. Nothing appears to be wrong so dkms shouldn't be falling on its face. If anyone has a reasonable theory on what's causing dkms to barf I'm all ears.
Many thanks.
'dkms status' shows:
fglrx, 8.561, 2.6.27-9-generic, x86_64: installed
So I'm thinking if it this is ok then maybe 2.6.28 isn't a stretch, but:
'dkms build -k 2.6.28 --kernelsourcedir /usr/src/linux-2.6.28 -m fglrx -v 8.561' yields( between dashed lines):
----------------------------------------------
Preparing kernel 2.6.28 for module build:
(This is not compiling a kernel, just preparing kernel symbols)
Storing current .config to be restored when complete
Running Generic preparation routine
make mrproper.......(bad exit status: 2)
using /usr/src/linux-2.6.28/.config
(I hope this is the correct config for this kernel)
make oldconfig.....
make prepare-all....(bad exit status: 2)
Building module:
cleaning build area....
pushd /var/lib/dkms/fglrx/8.561/build; sh make.sh --nohints --uname_r=2.6.28; popd....
Error! Build of fglrx.ko failed for: 2.6.28 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/fglrx/8.561/build/ for more information.
----------------------------------------------
One of the first hints that dkms is floundering are the nonsensical messages that it spits out. make.log in fact yields nothing of value, it's make.sh.log that we need to be interested in. That file shows:
----------------------------------------------
Error:
kernel includes at /lib/modules/2.6.28/build/include do not match current kernel.
they are versioned as ""
instead of "2.6.28".
you might need to adjust your symlinks:
- /usr/include
- /usr/src/linux
----------------------------------------------
Again more nonsense. So what if the includes don't match the current kernel?? The includes specified by "--kernelsourcedir" most definitely match the target kernel as required per the dkms man page. And there is nothing wrong with the /lib/modules/2.6.28/build symlink. The "linux" symlink is fine too. I have no idea what symlink is being referred to by "/usr/include". Those are the headers for the current kernel. They could be symlinked, but typically are not since one usually provides the header path explicitly when building any app that requires the headers. Nothing appears to be wrong so dkms shouldn't be falling on its face. If anyone has a reasonable theory on what's causing dkms to barf I'm all ears.
Many thanks.
Comment