#13 lostirc won't compile against >gtkmm-2.3.2

closed-fixed
nobody
None
5
2004-04-29
2004-03-12
Priit Laes
No

First pkg-config complains that gtkmm-2.0 is not found. When
changing this to gtkmm-2.4, the configure works fine, but I get
following compile errors:
...
make[3]: Entering directory `/home/amd/code/lostirc-0.3.
2/src/libirc'
if g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/include/gtkmm-2.3
-I/usr/lib/gtkmm-2.3/include -I/usr/include/glibmm-2.3
-I/usr/lib/glibmm-2.3/include -I/usr/include/gdkmm-2.3
-I/usr/lib/gdkmm-2.3/include -I/usr/include/pangomm-1.3
-I/usr/include/atkmm-1.3 -I/usr/include/gtk-2.0
-I/usr/include/sigc++-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.
0/include -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0
-I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/atk-1.0
-I../../intl -g -O2 -Wall -MT ServerConnection.o -MD -MP -MF ".
deps/ServerConnection.Tpo" \ -c -o ServerConnection.o `test -f 'ServerConnection.cpp' ||
echo './'`ServerConnection.cpp; \ then mv -f ".deps/ServerConnection.Tpo" ".
deps/ServerConnection.Po"; \ else rm -f ".deps/ServerConnection.Tpo"; exit 1; \ fi
In file included from ServerConnection.h:25,
from ServerConnection.cpp:25:
Socket.h:36: error: `Object' is not a class or namespace
Socket.h:36: error: invalid base-class specification
In file included from ServerConnection.cpp:25:
ServerConnection.h:30: error: `Object' is not a class or
namespace
ServerConnection.h:30: error: invalid base-class specification
In file included from LostIRCApp.h:36,
from ServerConnection.cpp:26:
DCC.h:32: error: `Object' is not a class or namespace
DCC.h:32: error: invalid base-class specification
ServerConnection.cpp: In constructor `ServerConnection::
ServerConnection(const

Glib::ustring&, const Glib::ustring&, int, bool)':
ServerConnection.cpp:59: error: `slot' undeclared in namespace
`SigC'
ServerConnection.cpp:60: error: `slot' undeclared in namespace
`SigC'
ServerConnection.cpp:61: error: `slot' undeclared in namespace
`SigC'
ServerConnection.cpp:62: error: `slot' undeclared in namespace
`SigC'
ServerConnection.cpp: In member function `void
ServerConnection::addConnectionTimerCheck()':
ServerConnection.cpp:245: error: `slot' undeclared in namespace
`SigC'
ServerConnection.cpp: In member function `void
ServerConnection::addReconnectTimer()':
ServerConnection.cpp:253: error: `slot' undeclared in namespace
`SigC'
make[3]: *** [ServerConnection.o] Error 1
make[3]: Leaving directory `/home/amd/code/lostirc-0.3.
2/src/libirc'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/amd/code/lostirc-0.3.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/amd/code/lostirc-0.3.2'
make: *** [all] Error 2

Discussion

    • summary: lostirc won't compile against >gtkmm-2.3.2 --> lostirc won't compile against >gtkmm-2.3.2
     
  • Logged In: YES
    user_id=277268

    LostIRC hasn't been updated yet to work with gtkmm 2.3 and
    libsigc++ 2. I'm working on this, but I don't have access to
    a system with these packages yet.

    Some clues on what can get you going:

    In Socket.h and DCC.h, replace "SigC::Object" with
    "sigc::trackable" (you might have to add an include as well)

    In the rest of the files, add the compatabilty header,
    <sigc++/compatability.h>.
    What errors do you get now?

     
  • Priit Laes
    Priit Laes
    2004-03-14

    Previous patch didn't fix all errors, and I did some cleanup

     
    Attachments
  • Priit Laes
    Priit Laes
    2004-03-14

    Fixed for sure...

     
    Attachments
  • Logged In: YES
    user_id=277268

    Thanks for the patches. I'm planning on doing a final gtkmm 2.2 release
    called 0.3.3, and then integrate your patches to CVS. Thanks!

     
  • Priit Laes
    Priit Laes
    2004-03-19

    Logged In: YES
    user_id=111196

    Oki.. I got one crash related backtrace... :D
    (lostirc:16957): glibmm-CRITICAL **:
    unhandled exception (type Glib::Error) in signal handler:
    domain: g_convert_error
    code : 1
    what : Invalid byte sequence in conversion input
    (lostirc:16957): GLib-CRITICAL **: file gmain.c: line 997 (g_source_destroy):
    assertion `source != NULL' failed
    Detaching after fork from child process 16963.

    Program received signal SIGSEGV, Segmentation fault.
    0x0821bcfb in ?? ()
    (gdb) bt
    #0 0x0821bcfb in ?? ()
    #1 0x40665bc0 in ~slot_base (this=0xffffcd00) at slot_base.h:87
    #2 0x40645224 in (anonymous namespace)::SourceConnectionNode::
    destroy_notify_callback(void*) (data=0x822cdd0) at main.cc:72
    #3 0x40871148 in g_source_callback_unref (cb_data=0x82267f0) at
    gmain.c:1181
    #4 0x40870911 in g_source_destroy_internal (source=0x8238490,
    context=0x811f918, have_lock=1) at gmain.c:966
    #5 0x408721c8 in g_main_dispatch (context=0x811f918) at gmain.c:1906
    #6 0x408731c8 in g_main_context_dispatch (context=0x811f918) at
    gmain.c:2433
    #7 0x408734fc in g_main_context_iterate (context=0x811f918, block=1,
    dispatch=1, self=0x8133bb8) at gmain.c:2514
    #8 0x40873b43 in g_main_loop_run (loop=0x82373d8) at gmain.c:2718
    #9 0x404318d3 in gtk_main () at gtkmain.c:1172
    #10 0x40184179 in Gtk::Main::run_impl() (this=0xbffff5c0) at main.cc:479
    #11 0x40183fc3 in Gtk::Main::run(Gtk::Window&) (window=@0xbffff0a0)
    at main.cc:433
    #12 0x0807193e in main (argc=1, argv=0xbffff644) at main.cpp:59
    (gdb)

     
  • Logged In: YES
    user_id=277268

    CVS is now updated and compiles perfectly with gtkmm 2.4.0.
    Please report any bugs you find in a new bug report. Thanks!

     
    • status: open --> closed-fixed