This page documents how to build
GStreamer for SH-Mobile.
0: Install dependencies: glib2.0, libxml2. For gst-plugins-base you will also need liboil.
Refer to these notes about cross-compiling glib:
http://library.gnome.org/devel/glib/unstable/glib-cross-compiling.html
http://www.stlinux.com/docs/getting_started-1.0/gtk2_cross_compile.php3
http://www.gentoo.org/proj/en/base/embedded/handbook/index.xml?full=1
$ export glib_cv_uscore=no glib_cv_stack_grows=no \
glib_cv_stack_grows=no glib_cv_has__inline=yes \
glib_cv_has__inline__=yes glib_cv_hasinline=yes \
glib_cv_sane_realloc=yes glib_cv_va_copy=yes \
glib_cv___va_copy=yes glib_cv_va_val_copy=no \
glib_cv_rtldglobal_broken=no glib_cv_uscore=no \
ac_cv_func_posix_getpwuid_r=yes \
ac_cv_func_posix_getgrgid_r=yes \
ac_cv_header_pwd_h=yes \
ac_cv_func_getpwuid_r=yes \
glib_cv_sizeof_gmutex=40
$ ./configure ...
1: Checkout GStreamer core
$ git clone git://gstreamer.freedesktop.org/gstreamer/gstreamer $ cd gstreamer $ ./autogen.sh $ ./configure --enable-maintainer-mode --enable-failing-tests --enable-poisoning ...
Should give an output like:
Configuration
Version : 0.10.22.1
Source code location : /home/conrad/src/gstreamer/gstreamer
Prefix : /home/conrad/usr-sh3/
Compiler : sh3-linux-gcc
Package name : GStreamer CVS/prerelease
Package origin : Unknown package origin
Documentation (manuals) : no
Documentation (API) : no
Pipeline XML load/save : yes
Command-line parser : yes
Option parsing in gst_init : yes
Tracing subsystem : yes
Allocation tracing : yes
Plugin registry : yes
Plugin support : yes
Network support : yes
Debug : yes
Profiling : no
Building examples : yes
Building test apps : yes
Building tests that fail : yes
$ make
2. gst-plugins-base
You will need liboil. You probably want to explicitly disable some features:
$ ./configure --without-x --disable-gnome_vfs --disable-pango
Wiki