Alex
Teammitglied
- Registriert
- 10. Januar 2012
- Beiträge
- 21.394
- Lösungen
- 9
- Reaktionspunkte
- 30.293
- Punkte
- 1.113
- Ort
- Paradise City
Gleich zu Beginn ein Warnhinweis:
Das Kompilieren dauert je nach Taktung des Pi zwischen 9 und 12 Stunden!
Ich persönlich hab meinen Pi auf 1000 MHz übertaktet, dies funktioniert aber nur mit Kühlkörpern
Zuerst müssen einige Pakete installiert und Softlinks erstellt werden. Zudem muss der Quellcode von XBMC heruntergeladen werden.
Dies hab ich der Einfachheit halber in einem Script zusammengefasst:
Eine neue Datei öffnen:
Dann folgendes einfügen:
dos2unix installieren:
Das Script prüfen lassen und ausführbar machen:
Das Script starten (kann ca. 30 min dauern) :emoticon-0167-beer: :smoke: :emoticon-0162-coffe
nun sind noch einige Modifikationen notwendig:
Dann bauen wir die XBMC-Tools:
Für Kodi v14 muss vor dem Befehl ./configure noch folgender Softlink erstellt werden:
Da bei XBMC/Kodi 14 ffmpeg kompiliert werden muss, dauert allein der ./configure Schritt ungefähr 3 Stunden @ 1000 MHz
zuletzt konfigurieren wir noch XBMC (alles auf einmal kopieren):
Noch 3 Fehler Korrigieren:
Jetzt kann XBMC endlich gebaut werde:
Nun kann der Raspberry für längere Zeit alleine gelassen werden.
Jetzt kann XBMC so gestartet werden:
Ab V14.0 dann bei Kodi:
Das Kompilieren dauert je nach Taktung des Pi zwischen 9 und 12 Stunden!
Ich persönlich hab meinen Pi auf 1000 MHz übertaktet, dies funktioniert aber nur mit Kühlkörpern
Zuerst müssen einige Pakete installiert und Softlinks erstellt werden. Zudem muss der Quellcode von XBMC heruntergeladen werden.
Dies hab ich der Einfachheit halber in einem Script zusammengefasst:
Eine neue Datei öffnen:
Code:
nano xbmcprepare.sh
Dann folgendes einfügen:
Code:
#!/bin/bash
#xbmc-compile Vorbereitungsscript für Raspberry Pi
#V. 0.2
#Variablen für XBMC/Kodi Version hinzugefügt
#Variablen:
xbmcurl="http://mirrors.xbmc.org/releases/source"
xbmcpack="14.0-Helix.tar.gz"
xbmcdir="/home/pi/xbmc-14.0-Helix"
# ---------------------- Ende Config-Bereich
sudo apt-get update
sudo apt-get install build-essential autoconf ccache gawk gperf mesa-utils zip unzip -y
sudo apt-get install autotools-dev comerr-dev dpkg-dev libalsaplayer-dev -y
sudo apt-get install libapt-pkg-dev:armhf libasound2-dev:armhf libass-dev:armhf libatk1.0-dev -y
sudo apt-get install libavahi-client-dev libavahi-common-dev libavcodec-dev libavformat-dev -y
sudo apt-get install libavutil-dev libbison-dev:armhf libbluray-dev:armhf libboost1.49-dev -y
sudo apt-get install libbz2-dev:armhf libc-dev-bin libc6-dev:armhf libcaca-dev libcairo2-dev -y
sudo apt-get install libcdio-dev libclalsadrv-dev libcrypto++-dev libcups2-dev libcurl3-gnutls-dev -y
sudo apt-get install libdbus-1-dev libdbus-glib-1-dev libdirectfb-dev libdrm-dev libegl1-mesa-dev -y
sudo apt-get install libelf-dev libenca-dev libept-dev libevent-dev libexpat1-dev libflac-dev:armhf -y
sudo apt-get install libfontconfig1-dev libfreetype6-dev libfribidi-dev libgconf2-dev -y
sudo apt-get install libgcrypt11-dev libgdk-pixbuf2.0-dev libgl1-mesa-dev libgles2-mesa-dev -y
sudo apt-get install libglew-dev:armhf libglewmx-dev:armhf libglib2.0-dev libglu1-mesa-dev -y
sudo apt-get install libgnome-keyring-dev libgnutls-dev libgpg-error-dev libgtk2.0-dev libhal-dev -y
sudo apt-get install libhunspell-dev:armhf libice-dev:armhf libicu-dev libidn11-dev libiso9660-dev -y
sudo apt-get install libjasper-dev libjbig-dev:armhf libjconv-dev libjpeg8-dev:armhf libkrb5-dev -y
sudo apt-get install libldap2-dev:armhf libltdl-dev:armhf liblzo2-dev libmad0-dev libmicrohttpd-dev -y
sudo apt-get install libmodplug-dev libmp3lame-dev:armhf libmpeg2-4-dev libmysqlclient-dev -y
sudo apt-get install libncurses5-dev libnspr4-dev libnss3-dev libogg-dev:armhf libopenal-dev:armhf -y
sudo apt-get install libp11-kit-dev libpam0g-dev:armhf libpango1.0-dev libpcre++-dev libpcre3-dev -y
sudo apt-get install libpixman-1-dev libpng12-dev libprotobuf-dev libpthread-stubs0-dev:armhf -y
sudo apt-get install libpulse-dev:armhf librtmp-dev libsamplerate0-dev:armhf -y
sudo apt-get install libsdl-image1.2-dev:armhf libsdl1.2-dev libslang2-dev:armhf -y
sudo apt-get install libsm-dev:armhf libsmbclient-dev:armhf libspeex-dev:armhf -y
sudo apt-get install libsqlite3-dev libssh-dev libssh2-1-dev libssl-dev libstdc++6-4.6-dev -y
sudo apt-get install libtagcoll2-dev libtasn1-3-dev libtiff4-dev libtinfo-dev:armhf libtinyxml-dev -y
sudo apt-get install libts-dev:armhf libudev-dev libv8-dev libva-dev:armhf libvdpau-dev:armhf -y
sudo apt-get install libvorbis-dev:armhf libvpx-dev:armhf libwebp-dev:armhf libwibble-dev -y
sudo apt-get install libx11-dev:armhf libx11-xcb-dev libxapian-dev libxau-dev:armhf -y
sudo apt-get install libxcb-glx0-dev:armhf libxcb-render0-dev:armhf libxcb-shm0-dev:armhf -y
sudo apt-get install libxcb1-dev:armhf libxcomposite-dev libxcursor-dev:armhf libxdamage-dev -y
sudo apt-get install libxdmcp-dev:armhf libxext-dev:armhf libxfixes-dev libxft-dev libxi-dev -y
sudo apt-get install libxinerama-dev:armhf libxml2-dev:armhf libxmu-dev:armhf libxrandr-dev -y
sudo apt-get install libxrender-dev:armhf libxslt1-dev libxss-dev:armhf libxt-dev:armhf -y
sudo apt-get install libxtst-dev:armhf libxxf86vm-dev libyajl-dev libzip-dev linux-libc-dev:armhf -y
sudo apt-get install lzma-dev mesa-common-dev python-dev python2.7-dev x11proto-composite-dev -y
sudo apt-get install x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev -y
sudo apt-get install x11proto-gl-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev -y
sudo apt-get install x11proto-record-dev x11proto-render-dev x11proto-scrnsaver-dev -y
sudo apt-get install x11proto-xext-dev x11proto-xf86vidmode-dev x11proto-xinerama-dev xtrans-dev -y
sudo apt-get install zlib1g-dev:armhf swig cmake -y
# Aufräumen
sudo apt-get purge libtag1-dev
sudo apt-get clean
# Softlinks setzen
sudo cp -R /opt/vc/include/* /usr/include
sudo cp /opt/vc/include/interface/vcos/pthreads/* /usr/include/interface/vcos
sudo ln -fs /opt/vc/lib/libEGL.so /usr/lib/libEGL.so
sudo ln -fs /opt/vc/lib/libEGL.so /usr/lib/arm-linux-gnueabihf/libEGL.so
sudo ln -fs /opt/vc/lib/libEGL.so /usr/lib/arm-linux-gnueabihf/libEGL.so.1
sudo ln -fs /opt/vc/lib/libEGL_static.a /usr/lib/libEGL_static.a
sudo ln -fs /opt/vc/lib/libEGL_static.a /usr/lib/arm-linux-gnueabihf/libEGL_static.a
sudo ln -fs /opt/vc/lib/libGLESv2.so /usr/lib/libGLESv2.so
sudo ln -fs /opt/vc/lib/libGLESv2.so /usr/lib/arm-linux-gnueabihf/libGLESv2.so
sudo ln -fs /opt/vc/lib/libGLESv2.so /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2
sudo ln -fs /opt/vc/lib/libGLESv2_static.a /usr/lib/libGLESv2_static.a
sudo ln -fs /opt/vc/lib/libGLESv2_static.a /usr/lib/arm-linux-gnueabihf/libGLESv2_static.a
sudo ln -fs /opt/vc/lib/libbcm_host.so /usr/lib/libbcm_host.so
sudo ln -fs /opt/vc/lib/libbcm_host.so /usr/lib/arm-linux-gnueabihf/libbcm_host.so
sudo ln -fs /opt/vc/lib/libvchiq_arm.a /usr/lib/libvchiq_arm.a
sudo ln -fs /opt/vc/lib/libvchiq_arm.a /usr/lib/arm-linux-gnueabihf/libvchiq_arm.a
sudo ln -fs /opt/vc/lib/libvchiq_arm.so /usr/lib/libvchiq_arm.so
sudo ln -fs /opt/vc/lib/libvchiq_arm.so /usr/lib/arm-linux-gnueabihf/libvchiq_arm.so
sudo ln -fs /opt/vc/lib/libvcos.a /usr/lib/libvcos.a
sudo ln -fs /opt/vc/lib/libvcos.a /usr/lib/arm-linux-gnueabihf/libvcos.a
sudo ln -fs /opt/vc/lib/libvcos.so /usr/lib/libvcos.so
sudo ln -fs /opt/vc/lib/libvcos.so /usr/lib/arm-linux-gnueabihf/libvcos.so
# Swap Partition erstellen:
dd if=/dev/zero of=/home/pi/swapfile1 bs=1024 count=204800
sudo mkswap /home/pi/swapfile1
sudo chown root:root /home/pi/swapfile1
sudo chmod 0600 /home/pi/swapfile1
sudo swapon /home/pi/swapfile1
#XBMC herunterladen:
wget $xbmcurl/$xbmcpack && tar -xzf $xbmcpack
#Kompilieren und installieren einiger Bibliotheken:
cd $xbmcdir
make -C lib/taglib
sudo make -C lib/taglib install
cd ~/
git clone --depth 5 https://github.com/Pulse-Eight/libcec.git
cd libcec
./bootstrap
./configure --prefix=/usr/local --with-rpi-include-path="/opt/vc/include"
make
sudo make install
cd $xbmcdir
#nur bei 12.3:
# make -C lib/libshairport
# sudo make -C lib/libshairport install
#Umgebungsvariablen
export TARGET_SUBARCH="armv6zk"
export TARGET_CPU="arm1176jzf-s"
export TARGET_FLOAT="hard"
export TARGET_FPU="vfp"
export TARGET_FPU_FLAGS="-mfloat-abi=$TARGET_FLOAT -mfpu=$TARGET_FPU"
export TARGET_EXTRA_FLAGS="-Wno-psabi -Wa,-mno-warn-deprecated"
export TARGET_COPT="-Wall -pipe -fomit-frame-pointer -O3 -fexcess-precision=fast -ffast-math -fgnu89-inline"
export TARGET_LOPT="-s -Wl,--as-needed"
export CFLAGS="-march=$TARGET_SUBARCH -mcpu=$TARGET_CPU $TARGET_FPU_FLAGS -mabi=aapcs-linux $TARGET_COPT $TARGET_EXTRA_FLAGS"
export CXXFLAGS="$CFLAGS"
export LDFLAGS="-march=$TARGET_SUBARCH -mtune=$TARGET_CPU $TARGET_LOPT"
dos2unix installieren:
Code:
sudo apt-get install dos2unix
Das Script prüfen lassen und ausführbar machen:
Code:
sudo dos2unix xbmcprepare.sh && sudo chmod +x xbmcprepare.sh
Das Script starten (kann ca. 30 min dauern) :emoticon-0167-beer: :smoke: :emoticon-0162-coffe
Code:
bash xbmcprepare.sh
nun sind noch einige Modifikationen notwendig:
Code:
cd xbmc-14.0-Helix
sed -i 's/USE_BUILDROOT=1/USE_BUILDROOT=0/' tools/rbp/setup-sdk.sh
sed -i 's/TOOLCHAIN=\/usr\/local\/bcm-gcc/TOOLCHAIN=\/usr/' tools/rbp/setup-sdk.sh
sh tools/rbp/setup-sdk.sh
sed -i 's/cd $(SOURCE); $(CONFIGURE)/#cd $(SOURCE); $(CONFIGURE)/' tools/rbp/depends/xbmc/Makefile
Dann bauen wir die XBMC-Tools:
Code:
sudo make -C tools/rbp/depends/xbmc/
Für Kodi v14 muss vor dem Befehl ./configure noch folgender Softlink erstellt werden:
Code:
sudo cp /opt/vc/lib/libmmal.so /usr/lib/arm-linux-gnueabihf/libmmal.so
sudo cp /opt/vc/lib/libmmal_core.so /usr/lib/arm-linux-gnueabihf/libmmal_core.so
sudo cp /opt/vc/lib/libmmal_util.so /usr/lib/arm-linux-gnueabihf/libmmal_util.so
sudo cp /opt/vc/lib/libmmal_vc_client.so /usr/lib/arm-linux-gnueabihf/libmmal_vc_client.so
Da bei XBMC/Kodi 14 ffmpeg kompiliert werden muss, dauert allein der ./configure Schritt ungefähr 3 Stunden @ 1000 MHz
zuletzt konfigurieren wir noch XBMC (alles auf einmal kopieren):
Code:
./configure --prefix=/usr --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf \
--localstatedir=/var/lib --with-platform=raspberry-pi --disable-gl --enable-gles \
--disable-x11 --disable-sdl --enable-ccache --enable-optimizations \
--enable-external-libraries --disable-goom --disable-hal --disable-pulse \
--disable-vaapi --disable-vdpau --disable-xrandr --disable-airplay \
--disable-alsa --enable-avahi --disable-libbluray --disable-dvdcss \
--disable-debug --disable-joystick --enable-mid --disable-nfs --disable-profiling \
--disable-projectm --enable-rsxs --enable-rtmp --disable-vaapi \
--disable-vdadecoder --disable-external-ffmpeg --disable-optical-drive
Noch 3 Fehler Korrigieren:
Code:
sudo sed -i 's/-DSQUISH_USE_SSE=2//' lib/libsquish/Makefile
sudo sed -i 's/#include "vchost_config.h"/#include "linux\/vchost_config.h"/' /usr/include/interface/vmcs_host/vcgencmd.h
sudo sed -i 's/ifeq (1,1)/ifeq (0,1)/' tools/TexturePacker/Makefile
Jetzt kann XBMC endlich gebaut werde:
Code:
make
Nun kann der Raspberry für längere Zeit alleine gelassen werden.
Nach dem dies Meldung erschienen ist, muss XBMC nur noch installiert werden-----------------------
XBMC built successfully
-----------------------
Code:
make install
Jetzt kann XBMC so gestartet werden:
Code:
/usr/local/lib/xbmc/xbmc.bin
Ab V14.0 dann bei Kodi:
Code:
/usr/local/lib/kodi/kodi.bin
Zuletzt bearbeitet: