Decided I would compile Tvheadend again and install it on a Ubuntu 16.04 host. Below is some of my notes that will help others with this installation and problems I hit along the way.
Required packages.
apt-get install unzip libcurl4-openssl-dev pkg-config git build-essential dvb-apps gettext libssl-dev cmake liburiparser-dev libavahi-client-dev apt-get install hdhomerun-config
Installation/Compiling steps.
wget http://ftp.gnu.org/gnu/libiconv/libiconv-1.15.tar.gz tar zxvf libiconv-1.15.tar.gz cd libiconv/ ./configure make install
I created a user called “tvh” which will be used for the running of the software, this way it doesn’t run as root. Plenty of guides about that detail how to create your user and associated correct group assignments to it. So I won’t cover these steps/operations.
Noticed when I executed the product post being compiled i was getting an error.
tvh@oscar:/usr/local/bin$ ./tvheadend ./tvheadend: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
As you can see from the output below, it’s a library issue.
tvh@oscar:/usr/local/bin$ ldd tvheadend linux-vdso.so.1 => (0x00007fff1d1e6000) libdvben50221.so => /usr/lib/libdvben50221.so (0x00007f3545385000) libdvbapi.so => /usr/lib/libdvbapi.so (0x00007f3545180000) libucsi.so => /usr/lib/libucsi.so (0x00007f3544f69000) libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f3544d00000) libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f35448bc000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f35446a1000) liburiparser.so.1 => /usr/lib/x86_64-linux-gnu/liburiparser.so.1 (0x00007f3544486000) libavahi-common.so.3 => /usr/lib/x86_64-linux-gnu/libavahi-common.so.3 (0x00007f354427a000) libavahi-client.so.3 => /usr/lib/x86_64-linux-gnu/libavahi-client.so.3 (0x00007f3544068000) libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f3543e1c000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f3543c18000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f35439fa000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f35436f1000) libiconv.so.2 => not found librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f35434e8000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f3543166000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3542d9d000) libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f3542d17000) /lib64/ld-linux-x86-64.so.2 (0x00005642bf9af000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f3542b01000) libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f35428de000) liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f35426bc000) libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f35423db000) libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f354216a000) libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f3541f56000)
Perform the following steps to address it.
cd /usr/lib/x86_64-linux-gnu ln -s /usr/local/lib/libiconv.so.2.6.0 libiconv.so.2.6.0 ln -s /usr/local/lib/libiconv.so.2 libiconv.so.2 ln -s /usr/local/lib/libiconv.so libiconv.so
It would appear that Tvheadend has had some improvements since the last time I compiled and installed it.
As shown below we now see a new logo for the product, and now get a wizard which helps with the setup.
Tvheadend is such a great application.
Leave a Reply