1 #!/bin/bash 2 3 # Create a log file of the build as well as displaying the build on the tty as it runs 4 exec > >(tee build_gstreamer.log) 5 exec 2>&1 6 7 ################# COMPILE GSTREAMER 1.2 ############ 8 9 10 # Update and Upgrade the Pi, otherwise the build may fail due to inconsistencies 11 12 sudo apt-get update && sudo apt-get upgrade -y --force-yes 13 14 # Get the required libraries 15 sudo apt-get install -y --force-yes build-essential autotools-dev automake autoconf \ 16 libtool autopoint libxml2-dev zlib1g-dev libglib2.0-dev \ 17 pkg-config bison flex python git gtk-doc-tools libasound2-dev \ 18 libgudev-1.0-dev libxt-dev libvorbis-dev libcdparanoia-dev \ 19 libpango1.0-dev libtheora-dev libvisual-0.4-dev iso-codes \ 20 libgtk-3-dev libraw1394-dev libiec61883-dev libavc1394-dev \ 21 libv4l-dev libcairo2-dev libcaca-dev libspeex-dev libpng-dev \ 22 libshout3-dev libjpeg-dev libaa1-dev libflac-dev libdv4-dev \ 23 libtag1-dev libwavpack-dev libpulse-dev libsoup2.4-dev libbz2-dev \ 24 libcdaudio-dev libdc1394-22-dev ladspa-sdk libass-dev \ 25 libcurl4-gnutls-dev libdca-dev libdirac-dev libdvdnav-dev \ 26 libexempi-dev libexif-dev libfaad-dev libgme-dev libgsm1-dev \ 27 libiptcdata0-dev libkate-dev libmimic-dev libmms-dev \ 28 libmodplug-dev libmpcdec-dev libofa0-dev libopus-dev \ 29 librsvg2-dev librtmp-dev libschroedinger-dev libslv2-dev \ 30 libsndfile1-dev libsoundtouch-dev libspandsp-dev libx11-dev \ 31 libxvidcore-dev libzbar-dev libzvbi-dev liba52-0.7.4-dev \ 32 libcdio-dev libdvdread-dev libmad0-dev libmp3lame-dev \ 33 libmpeg2-4-dev libopencore-amrnb-dev libopencore-amrwb-dev \ 34 libsidplay1-dev libtwolame-dev libx264-dev 35 36 cd /home/pi/Desktop/obd 37 mkdir packages 38 cd packages 39 mkdir gstreamer-1.3 40 cd gstreamer-1.3 41 42 git clone git://anongit.freedesktop.org/git/gstreamer/gstreamer 43 git clone git://anongit.freedesktop.org/git/gstreamer/gst-plugins-base 44 git clone git://anongit.freedesktop.org/git/gstreamer/gst-plugins-good 45 git clone git://anongit.freedesktop.org/git/gstreamer/gst-plugins-bad 46 git clone git://anongit.freedesktop.org/git/gstreamer/gst-plugins-ugly 47 git clone git://anongit.freedesktop.org/git/gstreamer/gst-libav 48 git clone git://anongit.freedesktop.org/git/gstreamer/gst-omx 49 50 cd gstreamer 51 git checkout -t origin/1.3 52 ./autogen.sh 53 make 54 sudo make install 55 cd .. 56 57 cd gst-plugins-base 58 git checkout -t origin/1.3 59 ./autogen.sh 60 make 61 sudo make install 62 cd .. 63 64 cd gst-plugins-good 65 git checkout -t origin/1.3 66 ./autogen.sh 67 make 68 sudo make install 69 cd .. 70 71 cd gst-plugins-ugly 72 git checkout -t origin/1.3 73 ./autogen.sh 74 make 75 sudo make install 76 cd .. 77 78 cd gst-libav 79 git checkout -t origin/1.3 80 ./autogen.sh 81 make 82 sudo make install 83 cd .. 84 85 # Install libusb-1.0 to enable uvch264src 86 sudo apt-get install -y --force-yes libusb-1.0 87 88 cd gst-plugins-bad 89 git checkout -t origin/1.3 90 export LD_LIBRARY_PATH=/usr/local/lib/ path 91 sudo LDFLAGS='-L/opt/vc/lib' CPPFLAGS='-I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux' ./autogen.sh 92 make CFLAGS+="-Wno-error -Werror=redundant-decls" 93 sudo make install 94 cd .. 95 96 cd gst-omx 97 LDFLAGS='-L/opt/vc/lib' CPPFLAGS='-I/opt/vc/include -I/opt/vc/include/IL -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux' ./autogen.sh --with-omx-target=rpi 98 make CFLAGS+="-Wno-error" 99 sudo make install
#在安装完成后,必须在etc/ld.so.conf.d/libc.conf 中加入/usr/local/lib/gstreamer-1.0,输入sudo ldconfig,载入so