I'm working on a clean Debian 7.7 install. After the install everything was working fine except the webcam in Iceweasel browser. After reading a lot I found that the best solution is to install FlashCam 1.4.5.
After downloading the sources, I did a make and got an error:
ERROR: Kernel configuration is invalid.
include/generated/autoconf.h or include/config/auto.conf are missing.
Run 'make oldconfig && make prepare' on kernel src to fix it.
WARNING: Symbol version dump /usr/src/linux-headers-3.2.0-4-common/Module.symvers
is missing; modules will have no dependencies and modversions.
Building modules, stage 2.
Read something and found that I must install the kernel sources and prepare to compile:
apt-get install linux-source linux-source-3.2
tar jxf /usr/src/linux-source-3.2.tar.bz2
cd linux-source-3.2
cp /boot/config-3.2.0-4-amd64 ./.config
make oldconfig
make prepare
Now there is an autoconf.h file in my local linux-sources
folder (linux-sources/include/generated/autoconf.h
) but not in */usr/src/linux-headers-3.2.0-4-common/include/*
where I assume is the folder where FlashCam sources are looking for. What should I do now? Copy by hand this folder is a bit scary and I can't find additional instructions to make it work.
Best Answer
Up to date instructions for building out-of-tree kernel modules are here. Installing the kernel config headers to the system include directory is not part of the procedure. Rather you invoke
make
from inside the kernel source tree and point it to the module's source tree with theM=
parameter.FlashCam hasn't been updated in a while so it may not be possible to build it against a recent kernel without some porting effort.