[Answered] can't install emby on Odroid C1

Using fresh install of DietPi_OdroidC1-ARMv7-Jessie.7z on a Odroid C1, eveything went fine until I tried to install emby-server, received the following:

 Mode: Installing Emby Server: web interface media streaming server

[  OK  ] DietPi-Software | Connection test: https://github.com/MediaBrowser
[  OK  ] DietPi-Software | wget https://github.com/MediaBrowser/Emby.Releases/releases/download/ -O 41.deb
[FAILED] DietPi-Software | dpkg -i 41.deb
[ INFO ] DietPi-Software | Trying automated APT fix
[  OK  ] DietPi-Software | APT fix, please wait...
Reading package lists...
Building dependency tree...
Reading state information...
Correcting dependencies... Done
The following packages will be REMOVED:
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
                                                              1 not fully installed or removed.
                                                                                               After this operation, 163 MB disk space will be freed.
(Reading database ... 19843 files and directories currently installed.)                                                                              (Reading database ...
Removing emby-server ( ...
Processing triggers for libc-bin (2.19-18+deb8u10) ...

[  OK  ] DietPi-Software | G_AGF
[  OK  ] DietPi-Software | Cleaning download directory
[ SUB1 ] DietPi-Services > stop
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : emby-server
[  OK  ] DietPi-Services | stop : nfs-kernel-server

 Mode: Optimize and configure software

[ INFO ] DietPi-Software | Applying DietPi optimizations and configurations for Odroid C1 (armv7l), please wait...

 Mode: Configuring NFS: network file system server

 Mode: Configuring Emby Server: web interface media streaming server

I tried to download & install the same deb package manually and received an error complaining the version of installed libc6 was too low. (didn’t save the exact message)

Any help would be appreciated, unfortunately this is (at least temporally) turning me away from dietpi and back to raspbian lite

Okay, Jessie related issue. Seems the current emby server requires a libc6 version higher than what Jessie offers.

We really need to offer an Odroid C1 Stretch image…

We will investigate, it should be possible to manually install the required libc6: https://github.com/Fourdee/DietPi/issues/2521

I tested on Jessie x86 VM and there it worked well. So it seems to be a specific issue related to ARMv7.

Ehm, Raspbian Lite on Odroid C1?? And how do you install emby-server there? :thinking:
No really, if you know any other method to install emby-server on a Jessie ARMv7 machine, we would appreciate and implement it.
I rechecked and there is no Debian repo APT package available.

Further checked, the actual dependencies of the deb package:

2019-02-09 15:50:42 root@micha:/tmp# dpkg-deb -I emby-server-deb_3.5.2.0_armhf.deb
 new Debian package, version 2.0.
 size 48912180 bytes: control archive=97676 bytes.
      89 bytes,     3 lines      conffiles
     289 bytes,     9 lines      control
  420996 bytes,  4616 lines      md5sums
     997 bytes,    41 lines   *  postinst             #!/bin/sh
     428 bytes,    29 lines   *  postrm               #!/bin/sh
     451 bytes,    31 lines   *  prerm                #!/bin/sh
    1777 bytes,    70 lines      shlibs
      60 bytes,     2 lines      triggers
 Package: emby-server
 Architecture: armhf
 Maintainer: Emby LLC <apps@emby.media>
 Installed-Size: 159616
 Depends: libc6 (>= 2.22), zlib1g (>= 1:1.1.4)
 Section: misc
 Priority: optional
 Description: Emby Server is a personal media server with apps on just about every device.

EDIT: Wait, let me at least try this first on VM…
Ah damn, locales requires libc6 << 2.24 :frowning::

root@VM-Jessie:/tmp# dpkg -i libc6_2.24-11+deb9u3_amd64.deb
dpkg: regarding libc6_2.24-11+deb9u3_amd64.deb containing libc6:amd64:
 libc6:amd64 breaks locales (<< 2.24)
  locales (version 2.19-18+deb8u10) is present and installed.

dpkg: error processing archive libc6_2.24-11+deb9u3_amd64.deb (--install):
 installing libc6:amd64 would break locales, and
 deconfiguration is not permitted (--auto-deconfigure might help)
Errors were encountered while processing:

EDIT 2: The locales dependency above should lead to the below failing on Odroid C1 as well. You can still try, dpkg will exit automatically.

If you have nothing to loose, you could try the bid risky manual update of the libc6 package. Risky since it is the most important core library that nearly the whole system and all other software depend on, following the dependency tails. However the version 2.24 package for Stretch does not have Stretch-specific dependencies and at least I did never see any libc6 <= 2.XX dependency, so that it seems to be fully backwards compatible. But still, several system core components might break if anything does wrong. To be a bid more failsafe, I would at least keep the Jessie dpkg package as well downloaded, so you can reinstall/downgrade again via dpkg.
This would be:

wget http://deb.debian.org/debian/pool/main/g/glibc/libc6_2.24-11+deb9u3_armhf.deb # Download the Stretch package
wget http://deb.debian.org/debian/pool/main/g/glibc/libc6_2.19-18+deb8u10_armhf.deb # Download the Jessie package to possibly allow reverting
dpkg -i libc6_2.24-11+deb9u3_armhf.deb # Install the Stretch package

Okay with v6.22 we disabled the install option on ARM devices with Jessie image: https://github.com/Fourdee/DietPi/pull/2525/files

Sadly the simple special libc6 version requirement of their ARM packages make it (nearly) impossible to fix this. Only solution would be to offer own Emby Server binaries based on a lower libc6 version. But possible that this even would not work, as I assume there is a reason why the Jessie packages require libc6 >= 2.22.

All this effort (with unknown result) is simply to high for the low amount of C1 users we have. And no one will miss Emby on ones ARM Jessie system since this as well never worked before (on older DietPi versions).