第一次建立ARM9的QT开发平台,必须先编译开发ARM9功能所需的核心程式。一开始先将s3c2410_kernel2.4.18_r1.1_webcam.tar.bz2档放至个人 /root 资料夹中,然后开启终端机模式,切换到个人 /root 资料夹输入解压缩指令
root@ashou :~/#tar xvfj s3c2410_kernel2.4.18_r1.1_webcam.tar.bz2解压缩完毕后,在个人 /root 资料夹中产生s3c2410_kernel2.4.18_r1.1_change的目录,此目录存放的是更改后的核心程式s3c2410_kernel2.4.18_r1.1。与原来核心程式版本的差异在于旧核心程式版本只支援到PWC-8.6;更改后的核心程式版本支援至PWC-8.8 。目的在于让2410能支援我们所买的webcam,型号为logitech quickcam 4000 pro 。为了日后可以使用核心程式来加速开发撰写ARM9的程式,我们将s3c2410_kernel2.4.18_r1.1_change搬移到 /usr/src目录中,在个人/root 资料夹输入指令如下
root@ashou:~/#mv /root/s3c2410_kernel2.4.18_r1.1_change /usr/src如果一切顺利,s3c2410_kernel2.4.18_r1.1_change目录移至/usr/src资料夹内,画面如图1所示
图1. 更改后的核心程式目录s3c2410_kernel2.4.18_r1.1_change
为了日后可以使应用程式能include核心程式所提供有关于webcam的资料结构和驱动程式,切换至/usr/src,建立名称为linux的连结,指令如下
root@ashou :/usr/src#ln –s s3c2410_kernel2.4.18_r1.1_change linux将s3c2410_kernel2.4.18_r1.1_change目录以softlink的形式连结至linux目录,以便能编译ARM9核心程式以及使用此更改后的核心程式来开发应用程式。
编译ARM9的核心程式(kernel)有两种方法:1.文字模式2.图形模式。文字模式採用Y/N的问答方式,不管是否有无变动都需做Y/N的问答,如此需要约2000次的问答;因此採用文字模式编译ARM9的核心程式太繁琐。採用图形模式编译ARM9的核心程式是针对须更动的部份做问答;如此大幅简化编译ARM9核心程式的过程。为了採用图形模式来编译ARM9的核心程式(kernel),我们必须安装libncurses5-dev套件。切换至/usr/src目录,然后下指令
root@s608:/usr/src#apt-get install libncurses5-dev
顺利安装libncurses5-dev套件后,开始编译核心程式指令如下
root@s608:/usr/src #cd linux
root@s608:/usr/src/linux#make menuconfig
如果一切顺利,会出现图2的画面
图2 安装libncurses5-dev套件
下make menuconfig指令后,进入编译核心程式的视窗如图3所示
图3. 编译核心程式的视窗
选择 multimedia devices选项如图4所示
图4 选择 multimedia devices选项
按 enter键后如图5所示
图5. 选择 Video for Linux选项
然后按空白键选择Video For Linux,Video For Linux选项前面应出现<M>的符号,再按箭头键选择 Video For Linux --->,如图6所示。
图6. 出现<M>符号的Video for Linux选项
点选Video For Linux --->后会出现四个模组选项,分别是
Mediavision Pro Movie Studio Video For Linux
CPiA Video For Linux
CPia USB lowlevel Support
NetWinder Video For Linux (EXPERIMENTAL)
这四个模组选项都需重新编译。首先按enter键点选Mediavision Pro Movie Studio Video For Linux,点选后该选项前面会出现<M>符号。以同样的方法点选其它三个选项,因此最后这四个选项前面都应该有<M>符号,如图7所示。
图7 出现<M>符号的四个子模组选项
点选完毕后按两次Exit选项,再点选 USB support如图8所示。
图8. 点选USB support选项
然后再点选 USB Philips Cameras选项,点选完毕后USB Philips Cameras选项前面会出现<M>符号,如图9所示
图9. 点选USB Philips Cameras选项
点选完毕后再按Exit选项出现图10画面,选Yes即储存新的核心程式设定。
图10. 选Yes储存新的核心程式设定
储存新的核心程式设定后,ubuntu作业系统自动进入文字模式的终端机视窗。检查/usr/src/linux/arch/arm/mach-s3c2410资料夹下的pcibuf.c的内容,有关MAX_SAFE、SIZE_SMALL及SIZE_LARGE参数必须设定如下:
#define MAX_SAFE 32
#define SIZE_SMALL 1024
#define SIZE_LARGE (16*1024)
做完必要的修正后重新编译核心程式前,必须下指令寻找更改后核心程式的相依性,指令如下
root@s608:/usr/src/linux#make dep
接下来即可编译新的核心程式,指令如下:
root@s608:/usr/src/linux#make modules
如果一切顺利,会出现图11画面。
图11. 编译新的核心程式成功后所出现的画面
--------------------------------------------------------------------------------------------------------
为了编译和使用Qtopia,必须在同一root终端机模式进行。若中途离开root终端机模式,所有用export指令所设定的环境变数将消失。例如
export QPEDIR=$PWD
export QTEDIR=$QTDIR
…………….
若不小心中途离开root终端机模式,必须再用export指令将所需的环境变数设定一次。
文章评论(0条评论)
登录后参与讨论