Hi, I was not aware of a wiki (opensuse) dealing with kernel compiling. Today I have tried to compile this patched module (dst.c) by copying the patch to /usr/src/linux/drivers/media/dvb/br8xx/ , cd to this directory and after that do a make. Actually the procedure you suggested. But it won’t work for me. Message on screen is: "…no targets… ".
I will look into the wiki, please post the link.
I have had a look into the Makefile, seems that the configuration of the kernel is necessary for the build and compile? The Makefile (first line) uses a variable to determine the obj-(variable) thing. I have found the howto on http://www.tldp.org/LDP/lkmpg/2.6/html/index.html : no dice with examples on opensuse 11.0.
At the moment the question boils down to:
Do I have to configure the (= re-use original kernel configuration of opensuse 11.0) and then cd to ./dst.c followed by make?
Anyway, please post the link the wiki. I guess I will need any help available out there…
No I meant the link you quoted (was a wiki?) The directory should be
bt8xx not br8xx?
Now you may have to install the kernel-syms as well… also watch the
line wrap on the copy commands.
cp /usr/src/linux-obj/i386/default/Module.symvers /usr/src/linux/
make -C /usr/src/linux SUBDIRS=$PWD modules
cp /usr/src/linux/drivers/media/dvb/bt8xx/dst.ko /lib/modules/`uname
rmmod dst; modprobe dst
Cheers Malcolm °¿° (Linux Counter #276890)
openSUSE 11.0 x86 Kernel 126.96.36.199-0.1-default
up 1:37, 1 user, load average: 0.01, 0.21, 0.22
GPU GeForce 6600 TE/6200 TE - Driver Version: 173.14.12
finally found the ‘wiki’ of documentation at Official openSUSE Kernel 188.8.131.52-0.1 Readme - openSUSE and followed your advice again (cd to source of dst.c and then issue command make -C /usr/src/linux M=$(pwd).
Some remarks: I had to treat dst.c as external module (by using make scripts and make prepare).
Commands ‘make oldconfig’ and ‘make cloneconfig’ as described in the official documentation had to be done as root!! My understanding is that everything except ‘make install’ and ‘make module_install’ can be done as normal user! Puzzling…
the ‘make -C /usr/src/linux/ M=$(pwd) module_install’ command (while as root in ./bt8xx directory) will not replace module dst.ko in /lib/modules/2.6…/kernel/drivers/media/dvb/bt8xx/dst.ko (timestamp unchanged). modprobing dst will crash e.g. Kaffeine and MythTV. Then I copied dst.ko from the build directory to /lib/modules/2.6…/kernel/drivers/media/dvb/bt8xx manually and after a cold reboot I have picture of my Twinhand Cable-CI card!!! The docs about custom kernels are great!
I’m a happy but still puzzled penguin, and some questions remain…, however the basic concept of
configure the kernel source
cd to the module you want to compile
prepare as external module
seem to work.
I’m not sure about the make … module_install