Zabrimus / VDRSternELEC

4 stars 2 forks source link

LE x86_64 (20.07.) undefined symbol on softhddevice start #110

Closed wihinape closed 1 month ago

wihinape commented 1 month ago

First of all, thank you for your effort and the time you spend on development.

I would like to try the vdr*(Libre)Elec version for x86_64 from 20.07. (‎Intel Celeron J4105) and have one question and one bug report:

Zabrimus commented 1 month ago

The tar Files can only be used to update an already existing installation. You can either install an official LibreELEC and then update the version by copying the tar file to /storage/.update and reboot. Or you burn the image version which ends with .img.gz to an bootable usb stick, sd card or whatever. The latest image version exists in the release from 2024-07-06.1.

Undefined symbol for softhddevice is bad. I have to search which dependency is missing. My latest x86 test is a while ago.

Could you please check ldd /usr/local/lib/vdr/libvdr-softhddevice.so.2.6*

wihinape commented 1 month ago

Oh, thanks for pointing this out. I didn't even realised that there are also image files. Then I will check out an earlier version.

LibreELEC:~ # ldd /usr/local/lib/vdr/libvdr-softhddevice.so.2.6* linux-vdso.so.1 (0x00007ffed2768000) libasound.so.2 => /usr/lib/libasound.so.2 (0x00007f4f8b280000) libvdpau.so.1 => /usr/lib/libvdpau.so.1 (0x00007f4f8b27b000) libva-x11.so.2 => /usr/lib/libva-x11.so.2 (0x00007f4f8b274000) libva.so.2 => /usr/lib/libva.so.2 (0x00007f4f8b244000) libva-glx.so.2 => /usr/lib/libva-glx.so.2 (0x00007f4f8b23e000) libGLU.so.1 => /usr/lib/libGLU.so.1 (0x00007f4f8b1cc000) libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f4f8b144000) libEGL.so.1 => /usr/lib/libEGL.so.1 (0x00007f4f8b12f000) libxcb-screensaver.so.0 => /usr/lib/libxcb-screensaver.so.0 (0x00007f4f8b12a000) libxcb-dpms.so.0 => /usr/lib/libxcb-dpms.so.0 (0x00007f4f8b126000) libswscale.so.7 => /usr/lib/libswscale.so.7 (0x00007f4f8b090000) libswresample.so.4 => /usr/lib/libswresample.so.4 (0x00007f4f8b06f000) libavfilter.so.9 => /usr/lib/libavfilter.so.9 (0x00007f4f8abef000) libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f4f8aac6000) libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007f4f8a9e7000) libavcodec.so.60 => /usr/lib/libavcodec.so.60 (0x00007f4f8972b000) libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007f4f89728000) libxcb-icccm.so.4 => /usr/lib/libxcb-icccm.so.4 (0x00007f4f89721000) libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f4f896f8000) libxcb-randr.so.0 => /usr/lib/libxcb-randr.so.0 (0x00007f4f896e8000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f4f89491000) libm.so.6 => /usr/lib/libm.so.6 (0x00007f4f893b4000) libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f4f89390000) libc.so.6 => /usr/lib/libc.so.6 (0x00007f4f891ce000) /usr/lib64/ld-linux-x86-64.so.2 (0x00007f4f8d740000) libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f4f891b9000) libdrm.so.2 => /usr/lib/libdrm.so.2 (0x00007f4f891a4000) libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007f4f8919d000) libxcb-dri3.so.0 => /usr/lib/libxcb-dri3.so.0 (0x00007f4f89198000) libGLdispatch.so.0 => /usr/lib/libGLdispatch.so.0 (0x00007f4f890e1000) libGLX.so.0 => /usr/lib/libGLX.so.0 (0x00007f4f890ad000) libavutil.so.58 => /usr/lib/libavutil.so.58 (0x00007f4f87fb9000) libpostproc.so.57 => /usr/lib/libpostproc.so.57 (0x00007f4f87fa3000) libavformat.so.60 => /usr/lib/libavformat.so.60 (0x00007f4f87da0000) libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007f4f87d8d000) libz.so.1 => /usr/lib/libz.so.1 (0x00007f4f87d72000) libdav1d.so.7 => /usr/lib/libdav1d.so.7 (0x00007f4f87b97000) libspeex.so.1 => /usr/lib/libspeex.so.1 (0x00007f4f87b7d000) libopus.so.0 => /usr/lib/libopus.so.0 (0x00007f4f87b20000) libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f4f87af2000) libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x00007f4f87a48000) libva-drm.so.2 => /usr/lib/libva-drm.so.2 (0x00007f4f87a42000) libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007f4f878e4000) libssl.so.3 => /usr/lib/libssl.so.3 (0x00007f4f87809000) libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x00007f4f872ed000)

Zabrimus commented 1 month ago

No missing dependency, but i miss one library which exactly contains the missing symbol. I need to start a new x86 build to check this.

Zabrimus commented 1 month ago

The makefile has been patched and softhddevice should now find libxi. Hopefully no other library is missing. I will now start a new build. The image build is the first build in a month, all other builds are update builds.

wihinape commented 1 month ago

Sorry to spoil your day, but these Xorg libraries are very annoying:

ERROR: /usr/local/lib/vdr/libvdr-softhddevice.so.2.6.9: undefined symbol: XRRQueryVersion

ldd /usr/local/lib/vdr/libvdr-softhddevice.so.2.6* linux-vdso.so.1 (0x00007ffd99d8b000) libasound.so.2 => /usr/lib/libasound.so.2 (0x00007f4e46786000) libvdpau.so.1 => /usr/lib/libvdpau.so.1 (0x00007f4e46781000) libva-x11.so.2 => /usr/lib/libva-x11.so.2 (0x00007f4e4677a000) libva.so.2 => /usr/lib/libva.so.2 (0x00007f4e4674a000) libva-glx.so.2 => /usr/lib/libva-glx.so.2 (0x00007f4e46744000) libGLU.so.1 => /usr/lib/libGLU.so.1 (0x00007f4e466d2000) libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f4e4664a000) libEGL.so.1 => /usr/lib/libEGL.so.1 (0x00007f4e46635000) libxcb-screensaver.so.0 => /usr/lib/libxcb-screensaver.so.0 (0x00007f4e46630000) libxcb-dpms.so.0 => /usr/lib/libxcb-dpms.so.0 (0x00007f4e4662c000) libswscale.so.7 => /usr/lib/libswscale.so.7 (0x00007f4e46596000) libswresample.so.4 => /usr/lib/libswresample.so.4 (0x00007f4e46575000) libavfilter.so.9 => /usr/lib/libavfilter.so.9 (0x00007f4e460f5000) libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f4e45fcc000) libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007f4e45eed000) libavcodec.so.60 => /usr/lib/libavcodec.so.60 (0x00007f4e44c31000) libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007f4e44c2e000) libxcb-icccm.so.4 => /usr/lib/libxcb-icccm.so.4 (0x00007f4e44c27000) libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f4e44bfe000) libxcb-randr.so.0 => /usr/lib/libxcb-randr.so.0 (0x00007f4e44bee000) libXi.so.6 => /usr/lib/libXi.so.6 (0x00007f4e44bdc000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f4e44985000) libm.so.6 => /usr/lib/libm.so.6 (0x00007f4e448a8000) libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f4e44884000) libc.so.6 => /usr/lib/libc.so.6 (0x00007f4e446c0000) /usr/lib64/ld-linux-x86-64.so.2 (0x00007f4e48c47000) libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f4e446ad000) libdrm.so.2 => /usr/lib/libdrm.so.2 (0x00007f4e44698000) libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007f4e44691000) libxcb-dri3.so.0 => /usr/lib/libxcb-dri3.so.0 (0x00007f4e4468c000) libGLdispatch.so.0 => /usr/lib/libGLdispatch.so.0 (0x00007f4e445d3000) libGLX.so.0 => /usr/lib/libGLX.so.0 (0x00007f4e445a1000) libavutil.so.58 => /usr/lib/libavutil.so.58 (0x00007f4e434ad000) libpostproc.so.57 => /usr/lib/libpostproc.so.57 (0x00007f4e43497000) libavformat.so.60 => /usr/lib/libavformat.so.60 (0x00007f4e43294000) libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007f4e4327f000) libz.so.1 => /usr/lib/libz.so.1 (0x00007f4e43266000) libdav1d.so.7 => /usr/lib/libdav1d.so.7 (0x00007f4e4308b000) libspeex.so.1 => /usr/lib/libspeex.so.1 (0x00007f4e43071000) libopus.so.0 => /usr/lib/libopus.so.0 (0x00007f4e43014000) libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f4e42fe6000) libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x00007f4e42f3a000) libva-drm.so.2 => /usr/lib/libva-drm.so.2 (0x00007f4e42f36000) libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007f4e42dd8000) libssl.so.3 => /usr/lib/libssl.so.3 (0x00007f4e42cfd000) libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x00007f4e427e1000)

Zabrimus commented 1 month ago

I finally managed to grab all libraries for softhddevice. VDR does not start in Virtualbox, but this is because of the sound device and not of missing libraries. There exists additional two output plugins you could test: softhddevice-drm and softhddevice-drm-gles. For these you only need to edit /storage/.config/vdropt/enabled_plugins and replace softhddevice with one of the others.

New build has been started....

wihinape commented 1 month ago

I can confirm that softhddevice is now starting successfully. However, it only shows a corrupted image and no sound. But that is a completely different topic. Thank you very much for your quick support.