manio / vdr-plugin-dvbapi

VDR dvbapi plugin for use with OSCam
http://www.streamboard.tv/wbb2/thread.php?threadid=40060
GNU General Public License v2.0
58 stars 25 forks source link

Compiling Error with Raspberry Pi 3B with Raspian Buster #135

Closed TawnyRoberts closed 4 years ago

TawnyRoberts commented 4 years ago

Hi, I am using Raspian Buster (Pi 3B) with VDR version 2.4.1. I am not succesfull with compiling vdr-plugin-dvbapi. Do you know a solution?

I tried:

sudo -i
apt-get update
apt-get install vdr vdr-dev build-essential make subversion git
mkdir -p /usr/local/src/vdr/PLUGINS/src
cd /usr/local/src/vdr/PLUGINS/src
git clone git://github.com/manio/vdr-plugin-dvbapi.git
ln -s vdr-plugin-dvbapi dvbapi
cd dvbapi
make

Then I get the following error:

root@raspberrypi /usr/local/src/vdr/PLUGINS/src/dvbapi > make
CC CAPMT.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o CAPMT.o CAPMT.cpp
CC DeCSA.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o DeCSA.o DeCSA.cpp
CC DVBAPI.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o DVBAPI.o DVBAPI.cpp
CC DVBAPISetup.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o DVBAPISetup.o DVBAPISetup.cpp
CC SocketHandler.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o SocketHandler.o SocketHandler.cpp
CC SCCIAdapter.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o SCCIAdapter.o SCCIAdapter.cpp
CC Frame.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o Frame.o Frame.cpp
CC SCCAMSlot.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o SCCAMSlot.o SCCAMSlot.cpp
CC Filter.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o Filter.o Filter.cpp
CC cscrypt/des.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -c -DPLUGIN_NAME_I18N='"dvbapi"' -DGITVERSION='"-GIT-197e752"' -DLIBSSL  -o cscrypt/des.o cscrypt/des.cpp
CC FFdecsa/FFdecsa.o
make[1]: Entering directory '/usr/local/src/vdr/PLUGINS/src/vdr-plugin-dvbapi/FFdecsa'
CC FFdecsa.o
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fexpensive-optimizations -funroll-loops -mmmx -msse -msse2 -msse3 -DPARALLEL_MODE=PARALLEL_128_SSE2 -c FFdecsa.c
g++: error: unrecognized command line option ‘-mmmx’
g++: error: unrecognized command line option ‘-msse’; did you mean ‘-fdse’?
g++: error: unrecognized command line option ‘-msse2’
g++: error: unrecognized command line option ‘-msse3’
make[1]: *** [Makefile:44: FFdecsa.o] Error 1
make[1]: Leaving directory '/usr/local/src/vdr/PLUGINS/src/vdr-plugin-dvbapi/FFdecsa'
make: *** [Makefile:139: FFdecsa/FFdecsa.o] Error 2

I also tried: sudo make LIBDVBCSA=1 Then I get:

root@raspberrypi /usr/local/src/vdr/PLUGINS/src/dvbapi > sudo make LIBDVBCSA=1
LD libvdr-dvbapi.so
g++ -g -O2 -fdebug-prefix-map=/build/vdr-62KENh/vdr-2.4.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -shared CAPMT.o DeCSA.o DVBAPI.o DVBAPISetup.o SocketHandler.o SCCIAdapter.o Frame.o SCCAMSlot.o Filter.o cscrypt/des.o -ldvbcsa -lcrypto -lssl -o libvdr-dvbapi.so
/usr/bin/ld: cannot find -ldvbcsa
collect2: error: ld returned 1 exit status
make: *** [Makefile:134: libvdr-dvbapi.so] Error 1

Thank you

manio commented 4 years ago

You need to install libdvbcsa dev package first

TawnyRoberts commented 4 years ago

Thank you Manio! It works with the following steps:

sudo -i

apt-get update
apt-get install vdr vdr-dev build-essential make subversion git
apt-get install libdvbcsa-dev

mkdir -p /usr/local/src/vdr/PLUGINS/src
cd /usr/local/src/vdr/PLUGINS/src
git clone git://github.com/manio/vdr-plugin-dvbapi.git

ln -s vdr-plugin-dvbapi dvbapi

cd dvbapi
sudo make LIBDVBCSA=1
sudo make install LIBDVBCSA=1

exit

To start dvbapi with vdr, I did this. Is it correct?:

cd /etc/vdr/conf.d/
sudo nano 50-dvbapi.conf

I added in 50-dvbapi.conf: [dvbapi]

Then: sudo chmod 777 50-dvbapi.conf

I checked with:

sudo /etc/init.d/vdr restart && sudo /etc/init.d/vdradmin-am restart
systemctl status vdr.service
journalctl -b -u vdr -l

Correct so far? Trying to figure out now, what I have to do next :)

manio commented 4 years ago

Please read howtos - there are plenty of them on the internet. Google is your friend :) I am not familiar with debian's vdr - I was always compiling it myself, not using the distro package, so I was passing the plugin to the command line...

I am closing the issue - I hope it is ok as the main problem is solved.