x86环境配置:交叉编译器arm-linux下载arm-linux-gcc-3.4.1.tar.bz2Cd /usr/local;mkdir arm;cp arm-linux-gcc-3.4.1.tar.bz2./(把arm-linux-3.4.1拷贝到这里);tar zxvf arm-linux-gcc-3.4.1.tar.bz2;mvarm-linux-gcc-3.4.1 3.4.1(重命名) (ok了)配置交叉编译器的路径:vi /etc/.bashrc然后找到PATH,修改为PATH=/usr/local/arm/3.4.1/bin:$PATH注销linux;在命令行输入env查看path有没有/usr/local/arm/3.4.1/bin结束安装摄像头驱动程序:gspcav1-20070508.tar.gz下载gspcav1-20070508.tar.gz把gspcav1-20070508.tar.gz拷贝到要编译内核目录下media(我的是/home/linux-2.6.14/driver/usb/media),tar zxvfgspcav1-20070508.tar.gz;cd /home/linux-2.6.14;修改内核让其支持gspcav1驱动(适用于zc301芯片的摄像头),内核默认支持ov511芯片的摄像头)1)Cd /home/linux-2.6.14;vi ./drivers/usb/Makefile在obj-$(CONFIG_USB_W9968CF)+= media/之后添加obj-$(CONFIG_USB_SPCA5XX)+= media/2)vi./drivers/usb/media/Kconfig添加如下代码 config USB_SPCA5XX tristate "USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras" depends on USB && VIDEO_DEV ---help--- Say Y or M here if you want to use one of these webcams: The built-in microphone is enabled by selecting USB Audio support. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called spca5xx.3)vidrivers/usb/media/Makefile添加如下代码obj-$(CONFIG_USB_SPCA5XX)+= gspcav1-20071224/4)配置内核选项cd /home/linux-2.6.14make menuconfigDevice Drivers---> Multimedia devices---><*> Video For Linux (内核默认是支持的)Device Drivers--->USB support--->│<*> Support for Host-side USB (内核默认是支持的)Device Drivers--->USB support--->USB Host Controller Drivers---<*>OHCI HCD support(内核默认是支持的)Device Drivers--->USB support--->│---USB Multimedia devices---USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras(按空格键选择M让支持编译成模块)make zImage(zImage在/home/linux-2.6.14/arch/arm/boot目录下)make modules(gspca.ko在/home/linux-2.6.14/drivers/usb/media/gspcav1-20071224下)cp /home/linux-2.6.14/arch/arm/boot/zImage /home/nfs(tftp目录)5)cp gspca.ko /home/rootfs(nfs目录下)安装摄像头驱动了Spcaview 软件包的安装;依赖关系;此软件依赖 libsdl,要先安装它才行,下载地址:http://www.libsdl.org ,我下载的是:SDL-1.2.10.tar.gzhttp://www.libsdl.org/download-1.2.php[root@localhost ~]# tar zxvf SDL-1.2.10.tar.gz [root@localhost ~]# cd SDL-1.2.10 [root@localhost SDL-1.2.10]# ./configure ; make ;make install安装SpcaView 软件包:[root@localhost ~]# tar zxvf spcaview-20051212.tar.gz [root@localhost ~]# cd spcaview-20051212 [root@localhost spcaview-20051212]# make ; make install配置可执行程序的路径:可执行的工具被安装到 /usr/local/bin目录中,所以我们还要配置一下用户的环境变量PATH 。配置命令执行路径,在当前用户家目录下的.bashrc文件中加入下面的一行;export PATH="$PATH:/bin:/sbin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin"然后运行如下命令;[root@localhost spcaview-20051212]# source .bashrcservfox软件包的安装和移植:http://mxhaard.free.fr/spca50x/embedded/Servfox/servfox-R1_1_3.tar.gztar zxvf servfox-R1_1_3.tar.gzcd servfox-R1_1_3里面没有Makefile,需要自己修改Makefile.arm;mv Makefile.arm MakefileMake;cp ./servfox /home/rootfs/bin完成移植servfox移植boa服务器:(用arm-linux-2.9.5没有问题)从www.boa.org;下载boa-0.94.13.tar.gz(我下载的)tar zxvf boa-0.94.13.tar.gzcd boa-0.94.13/src;./configure(生成Makefile)1)vi Makefile找到CC=gcc把修改为CC=arm-linux-;make得到的可执行程序为boa;arm-linux-strip boa;cp ./boa/home/rootfs/bin;2)用arm-linux-3.4.1会出现:错误1)util.c:100:1: error: pasting "t" and "->" does not give a valid preprocessing token make: *** [util.o] Error 1 解决方法:vi src/compat.h #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff 修改成#define TIMEZONE_OFFSET(foo) (foo)->tm_gmtoff make clean;make启动boa时的错误:Boa,error log 提示 “boa.c:266.icky Linux kernel bug!:No such file” 修改 src/boa.c,將底下判斷式註解掉: /*if (setuid(0) != -1) { DIE(”icky Linux kernel bug!”); }*/ make clean;makeBoa,error log“bo提示 boa.c:211 - getpwuid: No such file or directory”修改 src/boa.c,將底下兩個判斷式註解掉: /*if (passwdbuf == NULL) { DIE(”getpwuid”); } if (initgroups(passwdbuf->pw_name, passwdbuf->pw_gid) == -1) { DIE(”initgroups”); }*/ make clean;make配置boa环境:编译好了,自动生成boa.conf,可以根据这个boa.conf修改。1)#ServerName www.your.org.here(在PC机上测试网页,只需修改boa.conf就行了) 改成: ServerName 域名可以自己写(这句话不能注释,不然会出错) 2)DirectoryMaker /usr/lib/boa/boa_indexer 改成: #DirectoryMaker /usr/lib/boa/boa_indexer 3)DefaultType text/plain 改成: DefaultType text/html 4)#AddType application/x-httpd-cgi cgi 改成: AddType application/x-httpd-cgi cgi 5)ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 改成: ScriptAlias /cgi-bin/ /var/www/cgi-bin/。下面是配置开发板的环境:cd /home/rootfsMkdir ./etc/boa cp boa.conf ./etc/boa mkdir ./var/log/boa mkdir ./var/www mkdir ./var/www/cgi-bin/ 在/var/www中放置一个index.html文件cp /etc/mime.types ./etc把spcaview目录下http-java-applet拷贝到/home/rootfs/var/www/下(实现网页远程监控)需要修改文件夹的权限chmod -R 755 /home/rootfs/var/www/http-java-applet就可以了。安装java插件:1.linux下java插件Download jre-xx-linux-i586-rpm.bin;mkdir /usr/local/java;cp ./jre-xx-linux-i586-rpm.bin /usr/local/javachmod +x ./jre-xx-linux-i586-rpm.bin;./jre-xx-linux-i586-rpm.bin;在执行过程中需要选择输入yes就可以了。进入fixfore插件目录。我的系统是red flag;cd /usr/lib/fixfore/plugins;创建软连接ln -s /usr/java/jre1.5.0_09/plugin/i386/ns7/libjavaplugin_oji.so libjavaplugin_oji.so在浏览器中输入about:plugins查看。windows下java插件:下载好软件双击就好了,到这里所以软件已经安装好了,下面就可以启动开发板,进行相关的测试和配置。x86配置:1)启动tftp服务service xinted restart;netstat -au(查看有没有启动)2)启动nfs服务service portmap restart;service nfs restart开发版配置:启动开发板瞬间安键盘空格自己启动内核的方式,我通过网络下载。nettftp 192.168.1.88 0x30008000 zImage(192.168.1.88是tftp服务器,zImage是内核镜像,0x30008000是开发板的内存空间地址)Boot ram(从内存启动)通过nfs挂在文件系统。到此在开发版上的linux跑起来了。挂载摄像头驱动模块,insmod gspca.ko会打印摄像头的信息。mknod /dev/video0 c 81 0(建立摄像头设备)启动boa服务器输入boa &(查看/home/rootfs/var/log/boa/error_log里面的信息有没有启动成功)启动视频采集服务器输入servfox -g -d /dev/video0 -s 320x240 -w 7070 &(-d 表示设备,-s表示大小 -w端口)如果摄像头驱动成功话了,会提示等待连接的信息。x86环境:输入 spcaview -g -w 192.1