Skip to content

rellla/vdr-sunxi

Repository files navigation

VDR (www.tvdr.de) for Sunxi Devices
===================================

This is a guide and some scripts collecting VDR source files and some plugins, patch it and make it ready to build
with just a few commands.

<WIP ON>This is all work in progress, you may run into several errors, downloading twice, patching twice etc.
It's planned to integrate some security things, easy upgrade feature etc... </WIP OFF>

Although this was intended to work on sunxi devices, it may work for any armhf platform as this is only a simple collection of vdr and some plugins.
The scripts should work for a native build on the device or a cross building.

Other than cross building it on a Debian unstable amd64 system wasn't tested.


1) Obtain a toolchain (for cross compile)
(This example shows the Debian way, every other toolchain should work, too)

In this example I do a cross compile on a Debian unstable host (the NEW debian multiarch way).
The toolchain is inluded in the main repository with Debian Jessie.
You have to ensure, that host and destination system use the same symbol version on the libstdc++.so binary. It is not possible to run binaries, that are built on a Debian Sid host system with gcc-4.9.
A Debian Sid or Jessie destination system should work, because both use compiler version 4.9 and the symbol version should match.

A direct compile on the device should work, too.

apt-get update
apt-get upgrade
apt-get install gcc-4.9-arm-linux-gnueabihf g++-4.9-arm-linux-gnueabihf

Check, if this is still necessary:
ln -s /usr/bin/arm-linux-gnueabihf-gcc-4.9 /usr/bin/arm-linux-gnueabihf-gcc
ln -s /usr/bin/arm-linux-gnueabihf-c++-4.9 /usr/bin/arm-linux-gnueabihf-c++
ln -s /usr/bin/arm-linux-gnueabihf-g++-4.9 /usr/bin/arm-linux-gnueabihf-g++
ln -s /usr/bin/arm-linux-gnueabihf-gcov-4.9 /usr/bin/arm-linux-gnueabihf-gcov


2) Install build dependencies

..VDR
apt-get install libjpeg8-dev:armhf libcap-dev:armhf libfontconfig1-dev:armhf libfreetype6-dev:armhf libncursesw5-dev:armhf

..Markad
apt-get install libavcodec-dev:armhf

..EPGSearch
apt-get install libpcre3-dev:armhf

..Live
apt-get install libcxxtools-dev:armhf libtntnet-dev:armhf libboost-dev:armhf 

..SoftHDDevice
apt-get install libxcb-screensaver0-dev:armhf libxcb-dpms0-dev:armhf libxcb-icccm4-dev:armhf libxcb-ewmh-dev:armhf libavresample-dev:armhf libavcodec-dev:armhf libvdpau-dev:armhf libx11-dev:armhf libx11-xcb-dev:armhf libasound2-dev:armhf

..VDRManager ..SC
apt-get install libssl-dev:armhf

..SkinFlatPlus
apt-get install libmagick++-dev:armhf

..Skindesigner
apt-get install librsvg2-dev libcairo2-dev libxml2-dev libcurl4-openssl-dev

..MPV
apt-get install libmpv-dev:armhf libxrandr-dev:armhf


3) Fetch and prepare sources

.... if you want to enable building the SC Plugin, do the following:
./addsc.sh <Name_of_the_github_repo_owner>

.... then fetch the sources and patch them
./prepare.sh


4) Build VDR and plugins

Maybe you want to take a look into Make.config and adjust some directories for your own needs ...
Set the target for compiler optimizations (CORTEXA7=1, CORTEXA8=1, default NULL)

.... then just build it
CORTEXA7=1 make
make install


5) Optionally make a tarball to move it to the device and make sure to have the runtime dependencies installed:

make archive

..VDR
apt-get install libjpeg8 libcap2 libfontconfig1 libfreetype6 libncursesw5 gettext

..Markad
apt-get install libavcodec

..EPGSearch
apt-get install libpcre3

..Live
apt-get install licxxtools libtntnet libboost

..SoftHDDevice
apt-get install libxcb-screensaver0 libxcb-dpms0 libxcb-icccm4 libxcb-ewmh2 libxcb-utils libavresample1 libavcodec libvdpau1 libx11-6 libx11-xcb1 libasound2

..VDRManager ..SC
apt-get install libssl1.0.0

..SkinFlatPlus
apt-get install imagemagick

..Skindesigner
apt-get install librsvg2-2 libcairo2 libxml2 libcurl3

..MPV
apt-get install libmpv1 libxrandr2


At last you have to edit /etc/services:

echo "svdrp 6419/tcp # svdrp (vdr)" >> /etc/services


TODO Hints:

- Create a runvdr (runvdr-extreme?)
- dvbapi?
- xvdr
- skinopacity
- osdteletext
- smarttv-widget
- vdrmanager-widget

About

VDR (www.tvdr.de) for sunxi devices

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages