[CentOS] 5.5 & gspca

Ned Slider ned at unixmail.co.uk
Fri Jun 18 13:50:08 UTC 2010


On 18/06/10 14:10, JohnS wrote:
>
> On Thu, 2010-06-17 at 16:10 -0400, m.roth at 5-cent.us wrote:
>
>> <snip>
>> Ok, so I got the src rpm from el repo. Lessee, first I tried rpmbuild, and
>> that failed, because it *required* xen-devel. So I grabbed the tarfile
>> from /usr/src/redhat/SOURCES, unbzip2'd it, untar'd it, and did a make.
>> And ten or so later, I had 265 kernel modules. I don't want or need to
>> install all of that, so I tried just building gspca, and that failed with
>> unresolved errors.
> ---
> rpmbuild -ba  --target=i686 --nodeps video4linux-kmod-rt.spec
>
> Wrote: /SRPMS/video4linux-kmod-0.0-5.20090615.el5.jerepo.src.rpm
> Wrote: /RPMS/i686/kmod-video4linux-0.0-5.20090615.el5.jerepo.i686.rpm
> Wrote: /RPMS/i686/kmod-video4linux-xen-0.0-5.20090615.el5.jerepo.i686.rpm
> Wrote: /RPMS/i686/kmod-video4linux-PAE-0.0-5.20090615.el5.jerepo.i686.rpm
> Wrote: /RPMS/i686/video4linux-kmod-debuginfo-0.0-5.20090615.el5.jerepo.i686.rpm
>
> Use that command to build it.  You should get the above then trash xen,
> pae and debug.  That builds and works on a pure kernel-rt install.
> Allthough there things said left to do get it built the right way but it
> is usable.
>
> lib/modules/2.6.24.7-149.el5rt/extra/video4linux/ has several gspca
> modules so your better off installing all to get the correct one.
>
> John
>

No, define kvariants as appropriate and only build for the variants you 
want.

http://wiki.centos.org/HowTos/BuildingKernelModules#head-b86b6eec08d5719cf1838929f26a64af88e2b7f0

rpmbuild -ba  --target=i686 --define 'kvariants ""' video4linux-kmod.spec

If you don't, then by default the package will be built for *all* kernel 
variants and you will of course need the appropriate BuildRequires 
installed on your build system (eg, kernel-devel, kernel-xen-devel, 
kernel-PAE-devel).

Also, you can't just install the modules you want as there are also 
kernel module dependencies to consider. For example, your required gspca 
module might depend on gspca_main which might depend on videodev, which 
might depend on v4l2-compat-ioctl32, v4l1-compat etc. And you can't just 
update those modules because something else might also depend on them 
and it's dependencies will then be broken. This is why we package the 
whole lot - so you don't get screwed up dependencies. I admit it's not a 
perfect solution, and is very much one size fits all but if your 
hardware is not detected by the EL5 kernel then it is the simplest option.




More information about the CentOS mailing list