Error with libsigc++ signals when using gtkmm



Hello, I'm new to gtkmm and I can't seem to compile any code that uses slots. Everytime i try to call sigc::mem_fun there are several pages of compiler errors generated. It isn't a problem with my code, as the gtkmm-demo produces the same errors when compiling. I'm on WinXP, and I have the latest version of gtkmm for windows installed (2.6.1 i think).

m_refPixbuf = Gdk::Pixbuf::create(Gdk::COLORSPACE_RGB, FALSE, 8, m_back_width, m_back_height); m_DrawingArea.signal_expose_event().connect(sigc::mem_fun(*this, &Example_Pixbufs::on_drawingarea_expose));
 add(m_DrawingArea);

 m_TimeoutConnection = Glib::signal_timeout().connect(
     sigc::mem_fun(*this, &Example_Pixbufs::on_timeout), FRAME_DELAY);

this is the code that crashes, without it the file compiles fine. I use all the compiler and linker options mentioned by pkg-config, so that shouldn't be the cause of the problem. I compiled it using mingw on DEV-CPP, but i get the same errors when running mingw command line.

The errors are:

Compiler: Default compiler
Building Makefile: "C:\jiahan\xlabs\Makefile.win"
Executing  make...
mingw32-make -f "C:\jiahan\xlabs\Makefile.win" all
g++.exe -c splash.cpp -o splash.o -IC:/GTK/include/gtkmm-2.4 -IC:/GTK/lib/gtkmm-2.4/include -IC:/GTK/include/glibmm-2.4 -IC:/GTK/lib/glibmm-2.4/include -IC:/GTK/include/gdkmm-2.4 -IC:/GTK/lib/gdkmm-2.4/include -IC:/GTK/include/pangomm-1.4 -IC:/GTK/include/atkmm-1.6 -IC:/GTK/include/gtk-2.0 -IC:/GTK/include/sigc++-2.0 -IC:/GTK/lib/sigc++-2.0/include -IC:/GTK/include/glib-2.0 -IC:/GTK/lib/glib-2.0/include -IC:/GTK/lib/gtk-2.0/include -IC:/GTK/include/pango-1.0 -IC:/GTK/include/atk-1.0 -LC:/GTK/lib C:/GTK/include/sigc++-2.0/sigc++/type_traits.h: In instantiation of `sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*> >': C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:31: instantiated from `sigc::internal::typed_slot_rep<sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*> >' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:527: instantiated from `sigc::slot1<T_return, T_arg1>::slot1(const T_functor&) [with T_functor = sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*>, T_return = bool, T_arg1 = GdkEventExpose*]' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:1157: instantiated from `sigc::slot<T_return, T_arg1, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const T_functor&) [with T_functor = sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*>, T_return = bool, T_arg1 = GdkEventExpose*]'
splash.cpp:62:   instantiated from here
C:/GTK/include/sigc++-2.0/sigc++/type_traits.h:118: invalid use of undefined
  type `struct sigc::is_base_and_derived<sigc::adaptor_base,
  sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*> >'
C:/GTK/include/sigc++-2.0/sigc++/type_traits.h:96: declaration of `struct
sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor1<bool,
  Example_Pixbufs, GdkEventExpose*> >'

C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h: In instantiation of `sigc::internal::typed_slot_rep<sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*> >': C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:527: instantiated from `sigc::slot1<T_return, T_arg1>::slot1(const T_functor&) [with T_functor = sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*>, T_return = bool, T_arg1 = GdkEventExpose*]' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:1157: instantiated from `sigc::slot<T_return, T_arg1, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const T_functor&) [with T_functor = sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*>, T_return = bool, T_arg1 = GdkEventExpose*]'
splash.cpp:62:   instantiated from here
C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:31: non-constant `
sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor1<bool,
  Example_Pixbufs, GdkEventExpose*> >::value' cannot be used as template
  argument
C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h: In instantiation of `sigc::internal::typed_slot_rep<sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*> >': C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:527: instantiated from `sigc::slot1<T_return, T_arg1>::slot1(const T_functor&) [with T_functor = sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*>, T_return = bool, T_arg1 = GdkEventExpose*]' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:1157: instantiated from `sigc::slot<T_return, T_arg1, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const T_functor&) [with T_functor = sigc::bound_mem_functor1<bool, Example_Pixbufs, GdkEventExpose*>, T_return = bool, T_arg1 = GdkEventExpose*]'
splash.cpp:62:   instantiated from here
C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:28: non-constant `
sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor1<bool,
  Example_Pixbufs, GdkEventExpose*> >::value' cannot be used as template
  argument

C:/GTK/include/sigc++-2.0/sigc++/type_traits.h: In instantiation of `sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor0<bool, Example_Pixbufs> >': C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:31: instantiated from `sigc::internal::typed_slot_rep<sigc::bound_mem_functor0<bool, Example_Pixbufs> >' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:452: instantiated from `sigc::slot0<T_return>::slot0(const T_functor&) [with T_functor = sigc::bound_mem_functor0<bool, Example_Pixbufs>, T_return = bool]' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:1130: instantiated from `sigc::slot<T_return, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const T_functor&) [with T_functor = sigc::bound_mem_functor0<bool, Example_Pixbufs>, T_return = bool]'
splash.cpp:65:   instantiated from here
C:/GTK/include/sigc++-2.0/sigc++/type_traits.h:118: invalid use of undefined
  type `struct sigc::is_base_and_derived<sigc::adaptor_base,
  sigc::bound_mem_functor0<bool, Example_Pixbufs> >'

C:/GTK/include/sigc++-2.0/sigc++/type_traits.h:96: declaration of `struct
sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor0<bool,
  Example_Pixbufs> >'
C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h: In instantiation of `sigc::internal::typed_slot_rep<sigc::bound_mem_functor0<bool, Example_Pixbufs> >': C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:452: instantiated from `sigc::slot0<T_return>::slot0(const T_functor&) [with T_functor = sigc::bound_mem_functor0<bool, Example_Pixbufs>, T_return = bool]' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:1130: instantiated from `sigc::slot<T_return, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const T_functor&) [with T_functor = sigc::bound_mem_functor0<bool, Example_Pixbufs>, T_return = bool]'
splash.cpp:65:   instantiated from here
C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:31: non-constant `
sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor0<bool,
  Example_Pixbufs> >::value' cannot be used as template argument

C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h: In instantiation of `sigc::internal::typed_slot_rep<sigc::bound_mem_functor0<bool, Example_Pixbufs> >': C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:452: instantiated from `sigc::slot0<T_return>::slot0(const T_functor&) [with T_functor = sigc::bound_mem_functor0<bool, Example_Pixbufs>, T_return = bool]' C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:1130: instantiated from `sigc::slot<T_return, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil, sigc::nil>::slot(const T_functor&) [with T_functor = sigc::bound_mem_functor0<bool, Example_Pixbufs>, T_return = bool]'
splash.cpp:65:   instantiated from here

C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:28: non-constant `
sigc::is_base_and_derived<sigc::adaptor_base, sigc::bound_mem_functor0<bool,
  Example_Pixbufs> >::value' cannot be used as template argument

C:/GTK/include/sigc++-2.0/sigc++/functors/slot.h:39: confused by earlier errors, bailing out

mingw32-make: *** [splash.o] Error 1

Execution terminated



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