Kodi Community Forum

Full Version: building vdrvnsi server from source?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi,

I am aware that support of this plugin/addon is over from the author but as the new xvdr plugin/addon is not available for xbmc yet, I wish if somebody could help me install this plugin on my debian squeeze desktop. I am using e-tobi.net ppa but it has an outdated version of vdrvnsi server for which the xbmc addon from newer builds could not connect to. I tried to run the command make inside the plugin directory but ended up with these errors:

Code:
receiver.c:30:27: error: libsi/section.h: No such file or directory
receiver.c:31:30: error: libsi/descriptor.h: No such file or directory
receiver.c:97: error: ‘SI’ has not been declared
receiver.c:97: error: expected ‘,’ or ‘...’ before ‘&’ token
receiver.c:98: error: ‘SI’ has not been declared
receiver.c:98: error: expected ‘,’ or ‘...’ before ‘&’ token
receiver.c:141: error: variable or field ‘GetLanguage’ declared void
receiver.c:141: error: ‘SI’ has not been declared
receiver.c:141: error: ‘stream’ was not declared in this scope
receiver.c:141: error: expected primary-expression before ‘char’
make: *** [receiver.o] Error 1

Please help me if you canSmile

Regards,
Sami
vdr-vnsi comes with a debian directory. Why don't you try to create the package ? (I don't remember how to do this)
yeah I have seen this directory but I really dont know what to do with it since I am a linux beginner.

Best Regards,
Sami
If it can help you, here is the function used in gentoo for fixing the libsi path (for recplayer.c & receiver.c):
fix_vdr_libsi_include()
{
#einfo "Fixing include of libsi-headers"
local f
for f; do
sed -i "${f}" \
-e '/#include/s:"\(.*libsi.*\)":<\1>:' \
-e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:'
done
}
Thanks for your help but I really dont know what should I do with this text. Could you please explain a little more?

Thanks and best regards,
Sami
I use an ebuild to build vnsi. I call this function within the ebuild but perhaps you could use it directly.
Example of a bash script witch could works :
--- Script ---
#!/bin/bash

fix_vdr_libsi_include()
{
#einfo "Fixing include of libsi-headers"
local f
for f; do
sed -i "${f}" \
-e '/#include/s:"\(.*libsi.*\)":<\1>:' \
-e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:'
done
}

fix_vdr_libsi_include recplayer.c
fix_vdr_libsi_include receiver.c
--- /Script ---
Try to launch it in the source directory
I watched the debian rules and you can build vnsi with this command :
make all DVBDIR=/usr VDRDIR=/usr/include/vdr LIBDIR=.
Thank you very much. Now make command completes without errors but how I generate the .deb file to install the plugin?
oh lazy me. I copied the files manually to their locations as indicated in the debian/install and now vnsiserver plugin works. Thank you very much my friend.

Best Regards,
Sami
It's what I don't remember. You have to use the debian tools (probably dpkg). There are tutorials around if you want to try to build the package.
If you only want to test the plugin, you can try 'make install'.
you might have missed my last post but I managed to run the plugin by copying the indivual files to their perspective sites. Now everything works great, thanks to you.

Best Wishes,
Sami
I came across the same error but managed to get rid of it another way: I simply created a symbolic link in the src folder of the plugin to the libsi directory of vdr:

Code:
[email protected]:/usr/local/src/vdr-plugin-xvdr/src$ ln -s /usr/include/vdr/libsi

This way I could compile it. Wink
congrats for bumping a 1,5y old thread with info that is not even related. Xvdr != Vnsi