gstreamer/docs/faq/gst-uninstalled
Michael Smith d5aa0e9723 docs/faq/gst-uninstalled: Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will allow you to correctly...
Original commit message from CVS:
* docs/faq/gst-uninstalled:
Set up LD_LIBRARY_PATH to point at all the gstreamer libs. This will
allow you to correctly run intalled applications built against old           core, using plugins that require updated core (e.g. running
installed totem against a full uninstalled gstreamer stack)
2006-03-24 18:38:12 +00:00

82 lines
2.8 KiB
Bash
Executable file

#!/bin/bash -i
#
# this script is in CVS as gstreamer/docs/faq/gst-uninstalled
#
# set up environment to use and develop gstreamer and friends uninstalled
#
# set up PATH, LD_LIBRARY_PATH, PKG_CONFIG_PATH, GST_PLUGIN_PATH, MANPATH,
# PYTHONPATH
#
# prefer uninstalled versions, but also put installed ones on the path
#
# this script assumes that the relevant modules are checked out one by one
# under a given tree specified below in MYGST
#
# symlink this script in a directory in your path (for example $HOME/bin)
# to a name that reflects the version of your checkout
#
# e.g.:
# - mkdir $HOME/gst/head
# - ln -sf gst-uninstalled $HOME/bin/gst-head
# - checkout copies of gstreamer modules in $HOME/gst/head
# - gst-head
# this script is run -i so that PS1 doesn't get cleared
# change this variable to a different location depending on where you
# store your cvs checkouts
MYGST=$HOME/gst
# extract version from $0
# if this script is called "gst-head" then version will be "head"
VERSION=`echo $0 | sed s/.*gst-//g`
# base path under which dirs are installed
GST=$MYGST/$VERSION
if test ! -e $GST; then
echo "$GST does not exist !"
exit
fi
# set up a bunch of paths
PATH=$GST/gstreamer/tools:$GST/gst-plugins/tools:$GST/gst-player/src:$GST/gst-editor/src:$GST/prefix/bin:$PATH
# /some/path: makes the dynamic linker look in . too, so avoid this
LD_LIBRARY_PATH=$GST/prefix/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
for path in audio cdda interfaces netbuffer riff rtp tag video
do
LD_LIBRARY_PATH=$GST/gst-plugins-base/gst-libs/gst/$path/.libs:$LD_LIBRARY_PATH
done
for path in base net check controller dataprotocol
do
LD_LIBRARY_PATH=$GST/gstreamer/libs/gst/$path/.libs:$LD_LIBRARY_PATH
done
LD_LIBRARY_PATH=$GST/gstreamer/gst/.libs:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
export PKG_CONFIG_PATH=$GST/prefix/lib/pkgconfig:$GST/gstreamer/pkgconfig:$GST/gst-plugins/pkgconfig:$GST/gst-plugins-base/pkgconfig:$GST/gst-python/pkgconfig:$PKG_CONFIG_PATH
export GST_PLUGIN_PATH=$GST/gstreamer:$GST/gst-plugins:$GST/gst-plugins-base:$GST/gst-plugins-good:$GST/gst-plugins-ugly:$GST/gst-plugins-bad:$GST/gst-ffmpeg:$GST/gst-monkeysaudio:$GST/plugins:$GST_PLUGIN_PATH
export GST_PLUGIN_SYSTEM_PATH=
export GST_REGISTRY=$GST/gstreamer/registry.xml
export MANPATH=$GST/gstreamer/tools:$GST/prefix/share/man:$MANPATH
pythonver=`python -c "import sys; print sys.version[:3]"`
export PYTHONPATH=$GST/gst-python:$GST/prefix/lib/python$pythonver/site-packages:$PYTHONPATH
# if we got a command, run it, else start a shell
if test ! -z "$1";
then
$@
exit $?
fi
# set up prompt to help us remember we're in a subshell, cd to
# the gstreamer base dir and start $SHELL
cd $GST
shell=$SHELL
if test "x$SHELL" == "x/bin/bash"
then
# debian/ubuntu resets our PS1. bastards.
shell="$SHELL --noprofile"
fi
PS1="[gst-$VERSION] $PS1" $shell