Latest versions:
Server plugin: 0.5.1
MVP dongle: 0.5.2
Raspberry Pi client: 0.5.2
Windows client: 0.5.2-1
pi@raspberrypi:~/vompclient $ ldd vompclient
linux-vdso.so.1 (0x7eb85000)
/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0x76f17000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x76eed000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x76ed6000)
libbrcmEGL.so => /opt/vc/lib/libbrcmEGL.so (0x76e9d000)
libbrcmOpenVG.so => /opt/vc/lib/libbrcmOpenVG.so (0x76e78000)
libopenmaxil.so => /opt/vc/lib/libopenmaxil.so (0x76e62000)
libbcm_host.so => /opt/vc/lib/libbcm_host.so (0x76e38000)
libavformat.so.58 => /usr/lib/arm-linux-gnueabihf/libavformat.so.58 (0x76c0a000)
libavcodec.so.58 => /usr/lib/arm-linux-gnueabihf/libavcodec.so.58 (0x758a8000)
libavutil.so.56 => /usr/lib/arm-linux-gnueabihf/libavutil.so.56 (0x7581f000)
libavresample.so.4 => /usr/lib/arm-linux-gnueabihf/libavresample.so.4 (0x757fd000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x757ea000)
libfontconfig.so.1 => /usr/lib/arm-linux-gnueabihf/libfontconfig.so.1 (0x757a2000)
libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0x756ff000)
libMagick++-6.Q16.so.8 => /usr/lib/arm-linux-gnueabihf/libMagick++-6.Q16.so.8 (0x7568a000)
libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x75543000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x754c1000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x75494000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x75346000)
/lib/ld-linux-armhf.so.3 (0x76f2c000)
libvchiq_arm.so => /opt/vc/lib/libvchiq_arm.so (0x75330000)
libvcos.so => /opt/vc/lib/libvcos.so (0x75317000)
libbrcmGLESv2.so => /opt/vc/lib/libbrcmGLESv2.so (0x752f0000)
libxml2.so.2 => /usr/lib/arm-linux-gnueabihf/libxml2.so.2 (0x75173000)
libbz2.so.1.0 => /lib/arm-linux-gnueabihf/libbz2.so.1.0 (0x75153000)
libgme.so.0 => /usr/lib/arm-linux-gnueabihf/libgme.so.0 (0x75105000)
libopenmpt.so.0 => /usr/lib/arm-linux-gnueabihf/libopenmpt.so.0 (0x74f47000)
libchromaprint.so.1 => /usr/lib/arm-linux-gnueabihf/libchromaprint.so.1 (0x74f26000)
libbluray.so.2 => /usr/lib/arm-linux-gnueabihf/libbluray.so.2 (0x74ed0000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x74ea5000)
libgnutls.so.30 => /usr/lib/arm-linux-gnueabihf/libgnutls.so.30 (0x74d03000)
libssh-gcrypt.so.4 => /usr/lib/arm-linux-gnueabihf/libssh-gcrypt.so.4 (0x74c84000)
libswresample.so.3 => /usr/lib/arm-linux-gnueabihf/libswresample.so.3 (0x74c5c000)
libvpx.so.5 => /usr/lib/arm-linux-gnueabihf/libvpx.so.5 (0x74b5b000)
libwebpmux.so.3 => /usr/lib/arm-linux-gnueabihf/libwebpmux.so.3 (0x74b43000)
libwebp.so.6 => /usr/lib/arm-linux-gnueabihf/libwebp.so.6 (0x74adf000)
liblzma.so.5 => /lib/arm-linux-gnueabihf/liblzma.so.5 (0x74aae000)
libmmal_core.so => /opt/vc/lib/libmmal_core.so (0x74a90000)
libmmal_util.so => /opt/vc/lib/libmmal_util.so (0x74a70000)
libmmal_vc_client.so => /opt/vc/lib/libmmal_vc_client.so (0x74a55000)
librsvg-2.so.2 => /usr/lib/arm-linux-gnueabihf/librsvg-2.so.2 (0x74647000)
libgobject-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgobject-2.0.so.0 (0x745ea000)
libglib-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0x744da000)
libcairo.so.2 => /usr/lib/arm-linux-gnueabihf/libcairo.so.2 (0x743df000)
libzvbi.so.0 => /usr/lib/arm-linux-gnueabihf/libzvbi.so.0 (0x7435c000)
libsnappy.so.1 => /usr/lib/arm-linux-gnueabihf/libsnappy.so.1 (0x74345000)
libaom.so.0 => /usr/lib/arm-linux-gnueabihf/libaom.so.0 (0x74049000)
libcodec2.so.0.8.1 => /usr/lib/arm-linux-gnueabihf/libcodec2.so.0.8.1 (0x73fe0000)
libgsm.so.1 => /usr/lib/arm-linux-gnueabihf/libgsm.so.1 (0x73fc5000)
libmp3lame.so.0 => /usr/lib/arm-linux-gnueabihf/libmp3lame.so.0 (0x73f49000)
libopenjp2.so.7 => /usr/lib/arm-linux-gnueabihf/libopenjp2.so.7 (0x73eee000)
libopus.so.0 => /usr/lib/arm-linux-gnueabihf/libopus.so.0 (0x73e8f000)
libshine.so.3 => /usr/lib/arm-linux-gnueabihf/libshine.so.3 (0x73e75000)
libspeex.so.1 => /usr/lib/arm-linux-gnueabihf/libspeex.so.1 (0x73e4e000)
libtheoraenc.so.1 => /usr/lib/arm-linux-gnueabihf/libtheoraenc.so.1 (0x73e0b000)
libtheoradec.so.1 => /usr/lib/arm-linux-gnueabihf/libtheoradec.so.1 (0x73de3000)
libtwolame.so.0 => /usr/lib/arm-linux-gnueabihf/libtwolame.so.0 (0x73db3000)
libvorbis.so.0 => /usr/lib/arm-linux-gnueabihf/libvorbis.so.0 (0x73d7c000)
libvorbisenc.so.2 => /usr/lib/arm-linux-gnueabihf/libvorbisenc.so.2 (0x73cea000)
libwavpack.so.1 => /usr/lib/arm-linux-gnueabihf/libwavpack.so.1 (0x73cb6000)
libx264.so.155 => /usr/lib/arm-linux-gnueabihf/neon/vfp/libx264.so.155 (0x73a6a000)
libx265.so.165 => /usr/lib/arm-linux-gnueabihf/libx265.so.165 (0x737b0000)
libxvidcore.so.4 => /usr/lib/arm-linux-gnueabihf/libxvidcore.so.4 (0x736c0000)
libva.so.2 => /usr/lib/arm-linux-gnueabihf/libva.so.2 (0x73691000)
libva-drm.so.2 => /usr/lib/arm-linux-gnueabihf/libva-drm.so.2 (0x7367c000)
libva-x11.so.2 => /usr/lib/arm-linux-gnueabihf/libva-x11.so.2 (0x73667000)
libvdpau.so.1 => /usr/lib/arm-linux-gnueabihf/libvdpau.so.1 (0x73653000)
libX11.so.6 => /usr/lib/arm-linux-gnueabihf/libX11.so.6 (0x73531000)
libdrm.so.2 => /usr/lib/arm-linux-gnueabihf/libdrm.so.2 (0x73512000)
libexpat.so.1 => /lib/arm-linux-gnueabihf/libexpat.so.1 (0x734d1000)
libuuid.so.1 => /lib/arm-linux-gnueabihf/libuuid.so.1 (0x734ba000)
libpng16.so.16 => /usr/lib/arm-linux-gnueabihf/libpng16.so.16 (0x7347e000)
libMagickCore-6.Q16.so.6 => /usr/lib/arm-linux-gnueabihf/libMagickCore-6.Q16.so.6 (0x73202000)
libMagickWand-6.Q16.so.6 => /usr/lib/arm-linux-gnueabihf/libMagickWand-6.Q16.so.6 (0x730dd000)
libicui18n.so.63 => /usr/lib/arm-linux-gnueabihf/libicui18n.so.63 (0x72e8d000)
libicuuc.so.63 => /usr/lib/arm-linux-gnueabihf/libicuuc.so.63 (0x72d07000)
libicudata.so.63 => /usr/lib/arm-linux-gnueabihf/libicudata.so.63 (0x71309000)
libmpg123.so.0 => /usr/lib/arm-linux-gnueabihf/libmpg123.so.0 (0x712ac000)
libvorbisfile.so.3 => /usr/lib/arm-linux-gnueabihf/libvorbisfile.so.3 (0x71294000)
libp11-kit.so.0 => /usr/lib/arm-linux-gnueabihf/libp11-kit.so.0 (0x7118f000)
libidn2.so.0 => /usr/lib/arm-linux-gnueabihf/libidn2.so.0 (0x71163000)
libunistring.so.2 => /usr/lib/arm-linux-gnueabihf/libunistring.so.2 (0x70fe7000)
libtasn1.so.6 => /usr/lib/arm-linux-gnueabihf/libtasn1.so.6 (0x70fc7000)
libnettle.so.6 => /usr/lib/arm-linux-gnueabihf/libnettle.so.6 (0x70f83000)
libhogweed.so.4 => /usr/lib/arm-linux-gnueabihf/libhogweed.so.4 (0x70f42000)
libgmp.so.10 => /usr/lib/arm-linux-gnueabihf/libgmp.so.10 (0x70ec9000)
libgcrypt.so.20 => /lib/arm-linux-gnueabihf/libgcrypt.so.20 (0x70def000)
libgssapi_krb5.so.2 => /usr/lib/arm-linux-gnueabihf/libgssapi_krb5.so.2 (0x70da5000)
libsoxr.so.0 => /usr/lib/arm-linux-gnueabihf/libsoxr.so.0 (0x70d43000)
libvcsm.so => /opt/vc/lib/libvcsm.so (0x70d29000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgdk_pixbuf-2.0.so.0 (0x70cf7000)
libgio-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgio-2.0.so.0 (0x70b7c000)
libpangocairo-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libpangocairo-1.0.so.0 (0x70b61000)
libpangoft2-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libpangoft2-1.0.so.0 (0x70b3f000)
libpango-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libpango-1.0.so.0 (0x70af0000)
libcroco-0.6.so.3 => /usr/lib/arm-linux-gnueabihf/libcroco-0.6.so.3 (0x70aae000)
libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0x70a96000)
libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x70a1f000)
libpixman-1.so.0 => /usr/lib/arm-linux-gnueabihf/libpixman-1.so.0 (0x70944000)
libxcb-shm.so.0 => /usr/lib/arm-linux-gnueabihf/libxcb-shm.so.0 (0x70931000)
libxcb.so.1 => /usr/lib/arm-linux-gnueabihf/libxcb.so.1 (0x70902000)
libxcb-render.so.0 => /usr/lib/arm-linux-gnueabihf/libxcb-render.so.0 (0x708e7000)
libXrender.so.1 => /usr/lib/arm-linux-gnueabihf/libXrender.so.1 (0x708ce000)
libXext.so.6 => /usr/lib/arm-linux-gnueabihf/libXext.so.6 (0x708af000)
libogg.so.0 => /usr/lib/arm-linux-gnueabihf/libogg.so.0 (0x70898000)
libXfixes.so.3 => /usr/lib/arm-linux-gnueabihf/libXfixes.so.3 (0x70883000)
liblcms2.so.2 => /usr/lib/arm-linux-gnueabihf/liblcms2.so.2 (0x7082c000)
liblqr-1.so.0 => /usr/lib/arm-linux-gnueabihf/liblqr-1.so.0 (0x70811000)
libfftw3.so.3 => /usr/lib/arm-linux-gnueabihf/libfftw3.so.3 (0x70713000)
libltdl.so.7 => /usr/lib/arm-linux-gnueabihf/libltdl.so.7 (0x706fb000)
libgomp.so.1 => /usr/lib/arm-linux-gnueabihf/libgomp.so.1 (0x706c3000)
libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x70699000)
libkrb5.so.3 => /usr/lib/arm-linux-gnueabihf/libkrb5.so.3 (0x705dc000)
libk5crypto.so.3 => /usr/lib/arm-linux-gnueabihf/libk5crypto.so.3 (0x7059c000)
libcom_err.so.2 => /lib/arm-linux-gnueabihf/libcom_err.so.2 (0x70589000)
libkrb5support.so.0 => /usr/lib/arm-linux-gnueabihf/libkrb5support.so.0 (0x7056f000)
libkeyutils.so.1 => /lib/arm-linux-gnueabihf/libkeyutils.so.1 (0x7055b000)
libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0x70537000)
libgmodule-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgmodule-2.0.so.0 (0x70523000)
libmount.so.1 => /lib/arm-linux-gnueabihf/libmount.so.1 (0x704c2000)
libselinux.so.1 => /lib/arm-linux-gnueabihf/libselinux.so.1 (0x70490000)
libharfbuzz.so.0 => /usr/lib/arm-linux-gnueabihf/libharfbuzz.so.0 (0x70392000)
libthai.so.0 => /usr/lib/arm-linux-gnueabihf/libthai.so.0 (0x70378000)
libfribidi.so.0 => /usr/lib/arm-linux-gnueabihf/libfribidi.so.0 (0x7034e000)
libXau.so.6 => /usr/lib/arm-linux-gnueabihf/libXau.so.6 (0x7033b000)
libXdmcp.so.6 => /usr/lib/arm-linux-gnueabihf/libXdmcp.so.6 (0x70326000)
libblkid.so.1 => /lib/arm-linux-gnueabihf/libblkid.so.1 (0x702ce000)
libgraphite2.so.3 => /usr/lib/arm-linux-gnueabihf/libgraphite2.so.3 (0x7029d000)
libdatrie.so.1 => /usr/lib/arm-linux-gnueabihf/libdatrie.so.1 (0x70287000)
libbsd.so.0 => /usr/lib/arm-linux-gnueabihf/libbsd.so.0 (0x7025f000)
pi@raspberrypi:~/vompclient $
#!/bin/bash
set -x
BLOBS="-Wl,--format=binary -Wl,other/vdrhires.png -Wl,other/wallpaper720p.jpg -Wl,other/properties.png -Wl,other/radio.png -Wl,other/timers.png -Wl,other/tv.png -Wl,other/recordings.png -Wl,other/restart.png -Wl,other/hd1080i.png -Wl,other/hd720p.png -Wl,other/sd576i.png -Wl,other/txtoff.png -Wl,other/txton.png -Wl,other/dolbyoff.png -Wl,other/dolbyon.png -Wl,other/recording.png -Wl,other/recfolder.png -Wl,other/defposter.png -Wl,--format=default"
OBJECTS="command.o tcp.o dsock.o thread.o timers.o i18n.o vdp6.o message.o messagequeue.o udp.o wol.o audio.o video.o log.o mutex.o vdr.o recman.o recording.o recinfo.o channel.o rectimer.o event.o directory.o mark.o option.o player.o playerradio.o vfeed.o afeed.o demuxer.o demuxervdr.o demuxerts.o stream.o region.o colour.o boxstack.o boxx.o tbboxx.o vrecording.o vinfo.o vquestion.o vrecordinglist.o vrecordinglistclassic.o vrecordinglistadvanced.o vepgsummary.o vepglistadvanced.o vmute.o vvolume.o vtimerlist.o vtimeredit.o vrecordingmenu.o vchannellist.o vwelcome.o vvideorec.o vepgsettimer.o vchannelselect.o vserverselect.o vconnect.o vepg.o vrecmove.o vradiorec.o vaudioselector.o vscreensaver.o vopts.o wselectlist.o wjpeg.o wsymbol.o wbutton.o wtextbox.o woptionpane.o woptionbox.o wremoteconfig.o wtabbar.o led.o remote.o mtd.o osd.o surface.o vpicturebanner.o abstractoption.o eventdispatcher.o vdrrequestpacket.o vdrresponsepacket.o vvideolivetv.o vsleeptimer.o playerlivetv.o playerliveradio.o wprogressbar.o bitmap.o dvbsubtitles.o tfeed.o vteletextview.o teletextdecodervbiebu.o teletxt/txtfont.o movieinfo.o seriesinfo.o wmovieview.o wseriesview.o tvmedia.o wtvmedia.o wpictureview.o main.o threadp.o osdvector.o surfacevector.o osdopenvg.o ledraspberry.o mtdraspberry.o videoomx.o audioomx.o imageomx.o wjpegsimple.o remotelinux.o signal.o"
# All dynamic
# LIBSSTATIC=""
# LIBSDYNAMIC="-Wl,-Bdynamic -lpthread -lrt -lbrcmEGL -lbrcmOpenVG -lopenmaxil -lbcm_host -lavformat -lavcodec -lavutil -lavresample -ldl -lfontconfig -lfreetype -lMagick++-6.Q16"
# WIP
LIBSSTATIC="-Wl,-Bstatic -lfontconfig -lexpat -luuid -lfreetype -lpng -lavformat -lavresample -lavutil -lswresample -lz -lrt"
LIBSDYNAMIC="-Wl,-Bdynamic -lbrcmEGL -lbrcmOpenVG -lopenmaxil -lbcm_host -lpthread -lavcodec -lMagick++-6.Q16 -ldl"
g++ -Wall -o vompclient -L/opt/vc/lib -L/usr/lib/arm-linux-gnueabihf $BLOBS $OBJECTS $LIBSSTATIC $LIBSDYNAMIC
....
ifeq ($(vomp_platform),raspberry)
$(info Raspberry pi flags)
LDFLAGS = -Wall -static $(PICTURES)
LIBS = -L/opt/vc/lib -lpthread -lrt -lbrcmEGL -lbrcmOpenVG -lopenmaxil -lbcm_host -lavformat -lavcodec -lavutil -lavresample
....
....
g++ -Wall -static -Wl,--format=binary -Wl,other/vdrhires.png -Wl,other/wallpaper720p.jpg -Wl,other/properties.png -Wl,other/radio.png -Wl,other/timers.png -Wl,other/tv.png -Wl,other/recordings.png -Wl,other/restart.png -Wl,other/hd1080i.png -Wl,other/hd720p.png -Wl,other/sd576i.png -Wl,other/txtoff.png -Wl,other/txton.png -Wl,other/dolbyoff.png -Wl,other/dolbyon.png -Wl,other/recording.png -Wl,other/recfolder.png -Wl,other/defposter.png -Wl,--format=default -DIPV6 -o vompclient command.o tcp.o dsock.o thread.o timers.o i18n.o vdp6.o message.o messagequeue.o udp.o wol.o audio.o video.o log.o mutex.o vdr.o recman.o recording.o recinfo.o channel.o rectimer.o event.o directory.o mark.o option.o player.o playerradio.o vfeed.o afeed.o demuxer.o demuxervdr.o demuxerts.o stream.o region.o colour.o boxstack.o boxx.o tbboxx.o vrecording.o vinfo.o vquestion.o vrecordinglist.o vrecordinglistclassic.o vrecordinglistadvanced.o vepgsummary.o vepglistadvanced.o vmute.o vvolume.o vtimerlist.o vtimeredit.o vrecordingmenu.o vchannellist.o vwelcome.o vvideorec.o vepgsettimer.o vchannelselect.o vserverselect.o vconnect.o vepg.o vrecmove.o vradiorec.o vaudioselector.o vscreensaver.o vopts.o wselectlist.o wjpeg.o wsymbol.o wbutton.o wtextbox.o woptionpane.o woptionbox.o wremoteconfig.o wtabbar.o led.o remote.o mtd.o osd.o surface.o vpicturebanner.o abstractoption.o eventdispatcher.o vdrrequestpacket.o vdrresponsepacket.o vvideolivetv.o vsleeptimer.o playerlivetv.o playerliveradio.o wprogressbar.o bitmap.o dvbsubtitles.o tfeed.o vteletextview.o teletextdecodervbiebu.o teletxt/txtfont.o movieinfo.o seriesinfo.o wmovieview.o wseriesview.o tvmedia.o wtvmedia.o wpictureview.o main.o threadp.o osdvector.o surfacevector.o osdopenvg.o ledraspberry.o mtdraspberry.o videoomx.o audioomx.o imageomx.o wjpegsimple.o remotelinux.o signal.o -L/opt/vc/lib -lpthread -lrt -lbrcmEGL -lbrcmOpenVG -lopenmaxil -lbcm_host -lavformat -lavcodec -lavutil -lavresample -ldl -lfontconfig -lfreetype -L/usr/lib/arm-linux-gnueabihf -lMagick++-6.Q16
/usr/bin/ld: cannot find -lbrcmEGL
/usr/bin/ld: cannot find -lbrcmOpenVG
/usr/bin/ld: cannot find -lopenmaxil
/usr/bin/ld: cannot find -lbcm_host
/usr/bin/ld: remotelinux.o: in function `__gnu_cxx::__normal_iterator<Option**, std::vector<Option*, std::allocator<Option*> > >::difference_type __gnu_cxx::operator-<Option**, std::vector<Option*, std::allocator<Option*> > >(__gnu_cxx::__normal_iterator<Option**, std::vector<Option*, std::allocator<Option*> > > const&, __gnu_cxx::__normal_iterator<Option**, std::vector<Option*, std::allocator<Option*> > > const&)':
/usr/include/libcec/cecloader.h:124: warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: tcp.o: in function `TCP::connectTo(char*, unsigned short)':
/home/pi/vompclient/tcp.cc:151: warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
collect2: error: ld returned 1 exit status
make: *** [GNUmakefile:123: vompclient] Error 1
pi@raspberrypi:~/vompclient $