use compile uvc_video
I am using centos 5.6 (older kernel) and I get compile errors when I grabbed
the latest from http://linuxtv.org/hg/v4l-dvb (which I expect as I have an older 2.6.18 kernel)
All I need is uvc so I thought I would do "make menuconfig" and turn everything off but v4l/UVC stuff.
when I do make I get an error:
Kernel build directory is /lib/modules/2.6.18-194.32.1.el5/build
make -C /lib/modules/2.6.18-194.32.1.el5/build SUBDIRS=/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l modules make[2]: Entering directory `/usr/src/kernels/2.6.18-194.32.1.el5-x86_64'
CC [M]/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.o
In file included from /home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.c:19:/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/compat.h:133: error: static declaration of 'strict_strtoul' follows non-static declaration include/linux/kernel.h:141: error: previous declaration of 'strict_strtoul' was here
make[3]: *** [/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.o] Error 1
make[2]: *** [_module_/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l] Error 2
make[2]: Leaving directory `/usr/src/kernels/2.6.18-194.32.1.el5-x86_64'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l'
make: *** [all] Error 2
Is there a way I can just compile the linux/drivers/media/video/uvc ?
thats all I need. How do I do that?
Thanks,
Jerry
Quoted 2 lines · Jerry Geis
I am using centos 5.6 (older kernel) and I get compile errors when I grabbed
the latest from http://linuxtv.org/hg/v4l-dvb (which I expect as I have an older 2.6.18 kernel)
Okay, but do realize that it hasn't been updated in ages, and its completely unmaintained.
Quoted 5 lines
All I need is uvc so I thought I would do "make menuconfig" and turn everything off but v4l/UVC stuff.
when I do make I get an error:
Kernel build directory is/lib/modules/2.6.18-194.32.1.el5/build
That's not a 5.6 kernel, its a 5.5 kernel. (5.6 is 2.6.18-238.x.y.el5). Doesn't really make a difference, but felt compelled to point it out. :)
Quoted 6 lines
make -C
/lib/modules/2.6.18-194.32.1.el5/buildSUBDIRS=/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l modules make[2]: Entering directory `/usr/src/kernels/2.6.18-194.32.1.el5-x86_64'
CC [M]/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.o
In file included from/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.c:19:/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/compat.h:133: error: static declaration of 'strict_strtoul' follows non-static declarationinclude/linux/kernel.h:141: error: previous declaration of 'strict_strtoul' was here
The above lines tell you exactly what the failure was, and its easily worked around by removing the extraneous definition from v4l/compat.h.
Quoted 1 line
Is there a way I can just compile the linux/drivers/media/video/uvc ?
Edit the .config file, disable anything you don't want to build.
Quoted 1 line
thats all I need. How do I do that?
Another option you can try is something along the lines of this:
cd linux/drivers/media/video/uvc
make -C /lib/modules/2.6.18-194.32.1.el5/build M=$PWD modules
No guarantees that won't fail miserably though.
Backporting newer drivers to older kernels often takes a fair bit of effort and subject matter expertise -- especially when the kernel base is as ancient as the one you're targeting. There's a reason media_build doesn't support anything that old. :)
Signature · 2 lines
Jarod Wilson [email protected]
Jarod,
Quoted 52 lines · Jarod Wilson
Quoted 3 lines · Jerry Geis
I am using centos 5.6 (older kernel) and I get compile errors when I grabbed
the latest from http://linuxtv.org/hg/v4l-dvb (which I expect as I have an older 2.6.18 kernel)Okay, but do realize that it hasn't been updated in ages, and its completely unmaintained.
Quoted 6 lines
All I need is uvc so I thought I would do "make menuconfig" and turn everything off but v4l/UVC stuff.
when I do make I get an error:
Kernel build directory is/lib/modules/2.6.18-194.32.1.el5/buildThat's not a 5.6 kernel, its a 5.5 kernel. (5.6 is 2.6.18-238.x.y.el5). Doesn't really make a difference, but felt compelled to point it out. :)
Quoted 7 lines
make -C
/lib/modules/2.6.18-194.32.1.el5/buildSUBDIRS=/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l modules make[2]: Entering directory `/usr/src/kernels/2.6.18-194.32.1.el5-x86_64'
CC [M]/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.o
In file included from/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/tuner-xc2028.c:19:/home/silentm/MessageNet/v4l/new/v4l-dvb-3724e93f7af5/v4l/compat.h:133: error: static declaration of 'strict_strtoul' follows non-static declarationinclude/linux/kernel.h:141: error: previous declaration of 'strict_strtoul' was hereThe above lines tell you exactly what the failure was, and its easily worked around by removing the extraneous definition from
v4l/compat.h.Quoted 2 lines
Is there a way I can just compile the linux/drivers/media/video/uvc ?
Edit the .config file, disable anything you don't want to build.
Quoted 2 lines
thats all I need. How do I do that?
Another option you can try is something along the lines of this:
cd linux/drivers/media/video/uvc
make -C/lib/modules/2.6.18-194.32.1.el5/buildM=$PWD modules
Quoted 8 lines
No guarantees that won't fail miserably though.
Backporting newer drivers to older kernels often takes a fair bit of effort and subject matter expertise -- especially when the kernel base is as ancient as the one you're targeting. There's a reason
media_builddoesn't support anything that old. :)
I am trying your suggestion. with the "make -C" when I do this I get errors about include files not found. I was trying to specify "-I path/v4l -I path/linux/include" on the make line but it still does not find the compat.h and linux/usb.video.h
Your correct, my machines 5.6 and I was compiling on 5.5 machine.
How do I correctly specify the include paths?
Thanks
Jerry
On May 26, 2011, at 10:25 AM, Jerry Geis wrote:
...
Quoted 22 lines
Quoted 14 lines
Quoted 2 lines
Is there a way I can just compile the linux/drivers/media/video/uvc ?
Edit the .config file, disable anything you don't want to build.
Quoted 2 lines
thats all I need. How do I do that?
Another option you can try is something along the lines of this:
cd linux/drivers/media/video/uvc
make -C/lib/modules/2.6.18-194.32.1.el5/buildM=$PWD modulesQuoted 8 lines
No guarantees that won't fail miserably though.
Backporting newer drivers to older kernels often takes a fair bit of effort and subject matter expertise -- especially when the kernel base is as ancient as the one you're targeting. There's a reason
media_builddoesn't support anything that old. :)
Quoted 3 lines
I am trying your suggestion. with the "make -C" when I do this I get errors about include files not found. I was trying to specify "-I path/v4l -I path/linux/include" on the make line but it still does not find the
compat.handlinux/usb.video.h
Those probably need to be made relative to linux/drivers/media/video/uvc/.
Quoted 1 line
Your correct, my machines 5.6 and I was compiling on 5.5 machine.
Yeah, I'm quite familiar with the EL5 kernel. Just take a look at the kernel rpm changelog entries. :)
Signature · 2 lines
Jarod Wilson [email protected]