⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vidcat说明.txt

📁 此书是描述ARM与WINCE操作系统的一本好书
💻 TXT
字号:
 如何编译成功自己的vidcat
拿到vidcat的源码后(见昨天我发的一篇帖子),经过分析,我抽取出来了三个文件:vidcat.c v4l.c v4l.h,对比修改了大概几分钟,搞定了它的编译,生成了一个60k的vidcat可执行文件,拷贝到2410上后工作正常,就是usage老显示不出来,不过无所谓了
编译之前先确定arm-linux-gcc能直接使用,并且按照说明解开完成了/friendly-arm目录下的kernel目录(btw:这个/friendly-arm目录敲起来够麻烦的,我是建了个/arm目录,然后做了个/friendly-arm目录来链接它,平常自己敲用/arm,需要用到/friendly-arm的场合和不用改东东)然后在三个文件所在目录下建立一个文件build,编辑之,内容如下:
arm-linux-gcc -g -o2 
-i/usr/local/arm/2.95.3/arm-linux/include 
-i/friendly-arm/kernel/include 
-dvideo_dev=\"/dev/v4l/video0\" 
-dversion=\"0.7.2\" 
-l/usr/local/arm/2.95.3/arm-linux/lib  
-o vidcat vidcat.c v4l.c
实际写的时候需要写在一行里面,注意所有“-”之前都有空格的,编辑完成后存盘退出,然后chmod +x build
然后./build就可以顺利编译出来vidcat可执行文件了
如果你不能./build,提示什么操作拒绝之类的,就用chmod 775 build
知其然还要知其所以然,我来解释一下这行命令
-i/usr/local/arm/2.95.3/arm-linux/include -i/friendly-arm/kernel/include 这个是设定将这两个目录作为搜索头文件的目录,前者是光盘上解出来的gcc工具,后者是光盘上解出来的kernel包,之所以有后者,是因为前者中的一个头文件用到了linux/version.h,而这个文件只在linux的kernel里面有,所以需要后者。
-l/usr/local/arm/2.95.3/arm-linux/lib 这个是指定到这个目录下找相应的库文件。
-dvideo_dev=\"/dev/v4l/video0\" -dversion=\"0.7.2\" 这两个是将两个预定义常量传入编译器,一个是video_dev,是指定默认的摄像头设备对应的地方,一个是version,是vidcat的版本,我拿到的板子上的video_dev是/dev/v4l/video0,一般linux系统是/dev/video0。后面这个参数里面的0.7.2你爱写啥就写啥
这个带源码的vidcat对俺这样需要自己写摄像头程序的人作用挺大,呵呵,如果你也有这样的需求,不妨再深入研究一下vidcat.c,修改并嵌入你的程序,作个快乐的diyer
p.s.友善之臂公司号称随机附带的vidcat和那个摄像头程序是自主移植的但是又不带源码,这俩东东都是基于gpl协议的,如果公司仍然遵守gpl协议,就应该公开其源代码,而如果不公开源码,则需要向qt付费(每license是3刀),vidcat多少刀就不知道了,不知道友善之臂公司有没有严格遵守这样的规定,否则难免被扣上违法的帽子 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -