1、内核编译错误(使用编译器的版本不一样)
ARM-Linux-ld: ERROR: drivers/media/video/tq2440/built-in.o is compiled for EABI version 5, whereas drivers/media/video/built-in.o is compiled for version 0
编译内核的时候,遇到了这个错误 ,根据报错提示,可以辨别是编译器的错误。天嵌的光盘 为我们提供了2个交叉编译器,EABI 4.3.3跟softfloat 3.4.5 ,而天气默认的.config配置文件,是使用EABI 4.3.3,如果遇到这个问题,可以换成EABI 4.3.3编译器 ,然后在、/etc/profile,增加编译器的路径 ,source /etc/profile 使之生效。就可以编译成功了 。
2、移植摄像头(应用程序,编程后台运行的进程)
最近在移植应用程序上 总是有 一些困扰: 我的应用程序是 uvc_stream,也就是摄像头程序,执行程序的时候,会进入一个死循环 ,使得串口被占用,无法继续执行其他命令,而且,我以后还要加入其他应用。
所以,我要将执行程序编程 系统的 一个进程 ,一直在后台执行 。
将可执行程序uvc_stream(自己的应用程序) 放进 、sbin 目录(主要给予权限),之后进入/ect/rc.d/init.d/目录 ,新建文件,(我这里是USB_camera),
文件内容:
#!/bin/sh
base=uvc_stream
#See how were called
case "$1" in
start)
$base &
;;
stop)
pid='/bin/pidof $base'
if [-n "$pid"];then
kill -9 $pid
fi
;;
esac
exit 0;
保存,退出。
然后 就可以 /etc/rc.d/init.d start 就可以运行了 。是不是很简单 ,赶快去试试吧!!
还有人想要 添加 开机自启动吗?
将/etc/rc.d/init.d start 添加进/etc/init.d/rcS 文件中~~