[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#659069: getting retroshare in Debian



[cc on bug #659069 in debian which follows up on the packaging effort]

Hi!

Retroshare doesn't seem to be in Debian, and maybe this is something we
can fix! I notice you maintain a PPA for the software, that's a great
start.

I am trying to figure out how to build this thing from scratch. The
source tarballs in the PPA do not seem to correspond to the .tar.gz
distributed on sourceforge... Which one is the real "upstream tarball"?

Also, I have tried to compile the source tarball from the PPA in Debian
Wheezy, and I get the following error:

g++ -c -m64 -pipe -Wall -D_FILE_OFFSET_BITS=64 -O2 -fPIC -DPQI_DISABLE_TUNNEL -DRS_USE_BITDHT -DUBUNTU -I/usr/share/qt4/mkspecs/linux-g++-64 -I../../../src/libretroshare -I../../../src/libretroshare -I../../../src/retroshare-gui -I../../../src/libretroshare -I../../libbitdht/src -I../../../src/libbitdht -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/lib/i386-linux-gnu/glib-2.0/include/ -I../../openpgpsdk/src -I../../../src/openpgpsdk -I../../../src/libretroshare -I/usr/include/openssl -I/usr/include/upnp -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I. -o temp/linux-g++-64/obj/UPnPBase.o ../../../src/libretroshare/upnp/UPnPBase.cpp
../../../src/libretroshare/upnp/UPnPBase.cpp: In static member function 'static int CUPnPControlPoint::Callback(Upnp_EventType, void*, void*)':
../../../src/libretroshare/upnp/UPnPBase.cpp:1486:10: error: cannot convert 'UpnpString* {aka s_UpnpString*}' to 'const char*' for argument '2' to 'int UpnpSubscribe(UpnpClient_Handle, const char*, int*, char*)'
../../../src/libretroshare/upnp/UPnPBase.cpp:1496:53: error: no matching function for call to 'std::map<const std::basic_string<char>, CUPnPService*, std::less<const std::basic_string<char> >, std::allocator<std::pair<const std::basic_string<char>, CUPnPService*> > >::find(UpnpString*&)'
../../../src/libretroshare/upnp/UPnPBase.cpp:1496:53: note: candidates are:
In file included from /usr/include/c++/4.7/map:61:0,
                 from ../../../src/libretroshare/upnp/UPnPBase.h:27,
                 from ../../../src/libretroshare/upnp/UPnPBase.cpp:29:
/usr/include/c++/4.7/bits/stl_map.h:748:7: note: std::map<_Key, _Tp, _Compare, _Alloc>::iterator std::map<_Key, _Tp, _Compare, _Alloc>::find(const key_type&) [with _Key = const std::basic_string<char>; _Tp = CUPnPService*; _Compare = std::less<const std::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::basic_string<char>, CUPnPService*> >; std::map<_Key, _Tp, _Compare, _Alloc>::iterator = std::_Rb_tree_iterator<std::pair<const std::basic_string<char>, CUPnPService*> >; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = const std::basic_string<char>]
/usr/include/c++/4.7/bits/stl_map.h:748:7: note:   no known conversion for argument 1 from 'UpnpString* {aka s_UpnpString*}' to 'std::map<const std::basic_string<char>, CUPnPService*, std::less<const std::basic_string<char> >, std::allocator<std::pair<const std::basic_string<char>, CUPnPService*> > >::key_type& {aka const std::basic_string<char>&}'
/usr/include/c++/4.7/bits/stl_map.h:763:7: note: std::map<_Key, _Tp, _Compare, _Alloc>::const_iterator std::map<_Key, _Tp, _Compare, _Alloc>::find(const key_type&) const [with _Key = const std::basic_string<char>; _Tp = CUPnPService*; _Compare = std::less<const std::basic_string<char> >; _Alloc = std::allocator<std::pair<const std::basic_string<char>, CUPnPService*> >; std::map<_Key, _Tp, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<const std::basic_string<char>, CUPnPService*> >; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = const std::basic_string<char>]
/usr/include/c++/4.7/bits/stl_map.h:763:7: note:   no known conversion for argument 1 from 'UpnpString* {aka s_UpnpString*}' to 'std::map<const std::basic_string<char>, CUPnPService*, std::less<const std::basic_string<char> >, std::allocator<std::pair<const std::basic_string<char>, CUPnPService*> > >::key_type& {aka const std::basic_string<char>&}'
make[3]: *** [temp/linux-g++-64/obj/UPnPBase.o] Error 1
make[3]: Leaving directory `/tmp/buildd/retroshare-0.5.4/builddir/src/libretroshare'
make[2]: *** [sub-libretroshare-make_default] Error 2
make[2]: Leaving directory `/tmp/buildd/retroshare-0.5.4/builddir/src'
make[1]: *** [sub-src-make_default] Error 2
make[1]: Leaving directory `/tmp/buildd/retroshare-0.5.4/builddir'
make: *** [build-stamp] Error 2

I assume this is because of an incompatible libupnp version?

I am utterly confused by the libupnp version numbers, actually. Debian
has both "libupnp-dev" and "libupnp4-dev", but libupnp-dev actually
provides the libupnp6 binary package, with version number 1.6, while
libupnp4 is 1.8. Yaaay... any idea what retroshare actually requires here?

For more details on this weird situation, see:

http://packages.debian.org/libupnp

So basically, I cannot compile retroshare in Debian wheezy or unstable:
the libupnp versions are incompatible. I have also tried with the
upstream tarball, no luck.

Any suggestions?

A.

Attachment: pgpmE7ss3qvIr.pgp
Description: PGP signature


Reply to: