最近老大发话,要把gstreamer安装到ARMv6平台上,为了以后在ARM linux上开发多媒体应用做准备。安装过程遇到了很多问题,作个笔记,也好给大家作个参考。我的PC linux是Ubuntu8.10。
(1)当然是安装交叉编译环境,我用的是CodeSourcery(同事那里copy过来的,可以免费下载的)。解压以后是一个arm-2008q3-72-arm-none-linux-gnueabi.bin可以直接运行(它需要一个java虚拟机)。安装过程中犯了一个错误,这个安装文件文件不能在远程登陆界面运行(因为安装过程有图形界面)。默认安装完以后,在/root下有一个CodeSourcery目录, arm gcc就安装在这个目录下。为了可以在任何目录下运行交叉编译器。在环境变量中增加/root/CodeSourcery/Sourcery_G++_Lite/bin。
(2)交叉编译安装glib和libxml2(因为gstreamer依赖于这两个库)。glib可以到gtk的官方网站下载,我下载的是2.20.4版本。libxml2 Google或者baidu一下就可以下到了,我下的是2.6.26。
创建一个文件夹/root/gstreamer_lib_for_arm,glib和libxml2库就安装到这个目录下。下面开始交叉编译glib,把glib-2.20.4.tar.gz copy到/root下,解压,进入glib-2.20.4,用下面的命令执行configure动作:
CC=arm-none-linux-gnueabi-gcc ./configure --build=i686-linux --h