[Libtorrent-devel] libtorrent for kde,
strange sigc++ header problems
Felix Berger
bflat1 at gmx.net
Wed Feb 23 18:01:32 UTC 2005
Hi,
today I started a bittorrent implementation for KDE's kget based on
libtorrent.
I've run into some strange header problems with sigc++ and thought I'd ask
here, maybe it's a known issue.
As to my setup:
I included the following two test in the configure.ac files
PKG_CHECK_MODULES(TORRENT, libtorrent,
CXXFLAGS="$CXXFLAGS $TORRENT_CFLAGS";
LIBS="$LIBS $TORRENT_LIBS")
PKG_CHECK_MODULES(STUFF, sigc++-2.0,
CXXFLAGS="$CXXFLAGS $STUFF_CFLAGS";
LIBS="$LIBS $STUFF_LIBS")
and they completed successfully in the configure run. I had to include the
sigc++-2.0 stuff too because it uses some really non-standard include paths
on my system (Debian unstable).
Well, here is the compiler output:
if /bin/sh ../../../libtool --silent --mode=compile --tag=CXX g++
-I /home/bflat1/tmp/include/ -DHAVE_CONFIG_H -I. -I. -I../../..
-I/home/bflat1/tmp/include -I/usr/share/qt3/include -I/usr/X11R6/include
-I./../.. -DQT_THREAD_SUPPORT -D_REENTRANT -D_FILE_OFFSET_BITS=64
-Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500
-D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W
-Wpointer-arith -Wwrite-strings -g -O2 -Wformat-security
-Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common
-fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE
-DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION
-I/home/bflat1/tmp//include -I/usr/include/sigc++-2.0
-I/usr/lib/sigc++-2.0/include -MT bttransfer.lo -MD -MP -MF
".deps/bttransfer.Tpo" \
-c -o bttransfer.lo `test -f 'bttransfer.cpp' || echo './'`bttransfer.cpp; \
then mv -f ".deps/bttransfer.Tpo" ".deps/bttransfer.Plo"; \
else rm -f ".deps/bttransfer.Tpo"; exit 1; \
fi
In file included from /usr/include/sigc++-2.0/sigc++/connection.h:22,
from /home/bflat1/tmp/include/torrent/download.h:11,
from /home/bflat1/tmp/include/torrent/torrent.h:6,
from bttransfer.h:26,
from bttransfer.cpp:21:
/usr/include/sigc++-2.0/sigc++/signal.h:434: error: parse error before `*'
token
/usr/include/sigc++-2.0/sigc++/signal.h:441: error: invalid data member
initialization
/usr/include/sigc++-2.0/sigc++/signal.h:441: error: (use `=' to initialize
static data members)
/usr/include/sigc++-2.0/sigc++/signal.h:444: error: parse error before
`return'
/usr/include/sigc++-2.0/sigc++/signal.h:448: error: parse error before `}'
token
/usr/include/sigc++-2.0/sigc++/signal.h:456: error: `signal_emit0' is not a
template
/usr/include/sigc++-2.0/sigc++/signal.h:457: error: ISO C++ forbids
declaration
of `signal_emit0' with no type
/usr/include/sigc++-2.0/sigc++/signal.h:457: error: template-id `
signal_emit0<T_return, sigc::nil>' used as a declarator
/usr/include/sigc++-2.0/sigc++/signal.h:457: confused by earlier errors,
bailing out
make[1]: *** [bttransfer.lo] Error 1
It looks like the signal_impl type can't be resolved. An insight into this is
welcome, I'll try to find out on my own in the meantime as well.
Regards
Felix Berger
--
Try Debian GNU/Linux!
http://www.felix.beldesign.de/
More information about the Libtorrent-devel
mailing list