Thanks for your help guys. I'm not completely out of the water, but I 
was able to compile a test app that links in my library's object files, 
and that was failing before. I think my main app that uses the library 
will link properly once I clean up it's differences with gtkmm 2.4.

jlm wrote:
> I did some investigation and discovered that there is a gtkmm 2.4, and 
> that I would be using it if I did pkg-config gtkmm-2.4, instead of 
> gtkmm-2.0. The gtkmm-2.0 I have is from the beginning of last year, so 
> that is most likely compiled using an older version of gcc. So this 
> could be causing the problems.
> 
> I have since changed my build to use gtkmm-2.4, but now am updating 
> everything to use the changes in the latest gtkmm (actually LibSigC++).
> 
> I think this should fix things.
> 
> Lakin Wecker wrote:
> 
>>I vaguely remember having a similar problem once.  iirc, it was cause by
>>linking to different versions of the same library.  Have you run ldd on the
>>apporpriate libraries to ensure they're all linked properly.   And are you
>>certain that the above compile command is indeed finding the right version
>>of gtkbonus?  (IE, there isn't one left lying around on your sytem from a
>>previous build that it's finding and using?)
>>
>>Lakin
>>
>>On 8/16/06, jlm <[EMAIL PROTECTED]> wrote:
>>
>>
>>>Well, I've recompiled glibc, glib, gtk+, gtkmm, gtkglext, and gtkglextmm
>>>(whew!). I'm still having problems.
>>>
>>>With my library, I have the build set up so that I can either compile
>>>the library, or compile a test program. The test program links all the
>>>object files in directly, so it doesn't use the library as a library. I
>>>can compile the library, but not a test program.
>>>
>>>Below shows how I am compiling and linking. I have a number of other
>>>compile steps, but each uses the exact same flags as the one below.
>>>
>>>I guess my next step is to create a small sample program that uses the
>>>Gtk::GL::DrawingArea, and see what is the smallest program that I can
>>>create that has this problem.
>>>
>>>g++ -c $(pkg-config gtkmm-2.0 gtkglextmm-1.2 --cflags) -Isrc -ggdb3
>>>-fno-inline test/color_dialog_test.cpp -o ./color_dialog_test.o
>>>g++ $(pkg-config gtkmm-2.0 gtkglextmm-1.2 --libs) -o ./color_dialog_test
>>>  ./debug_angles3d.o ./debug_color.o ./debug_color_dialog.o
>>>./debug_color_dialog_impl.o ./debug_evaluator.o ./debug_gradient.o
>>>./debug_gradient_dialog.o ./debug_gradient_dialog_impl.o
>>>./debug_interpolate.o ./debug_interpolate_vbox.o
>>>./debug_interpolate_graph.o ./debug_scrollbar.o ./debug_trough.o
>>>./color_dialog_test.o
>>>
>>>./debug_angles3d.o:(.gnu.linkonce.r._ZTCN8gtkbonus12light_sphereE0_N3Gtk2GL11DrawingAreaE+0x16c):
>>> 
>>>
>>>undefined reference to `virtual thunk [v:0,-24] to
>>>Gtk::GL::DrawingArea::~DrawingArea [in-charge]()'
>>>
>>>./debug_angles3d.o:(.gnu.linkonce.r._ZTCN8gtkbonus12light_sphereE0_N3Gtk2GL11DrawingAreaE+0x170):
>>> 
>>>
>>>undefined reference to `virtual thunk [v:0,-24] to
>>>Gtk::GL::DrawingArea::~DrawingArea [in-charge deleting]()'
>>>collect2: ld returned 1 exit status
>>>
>>>
>>>Timothy M. Shead wrote:
>>>
>>>>On Sun, 2006-08-13 at 19:15 -0400, jlm wrote:
>>>>
>>>>
>>>>>I am upgrading from gtkglextmm 1.1.0 to 1.2.0. I believe I have made 
>>>
>>>all
>>>
>>>>>of the necessary changes to my code, but when I link I get this error:
>>>>>
>>>>>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/../../../libgtkbonus.so:
>>>>>undefined reference to `virtual thunk [v:0,-24] to
>>>>>Gtk::GL::DrawingArea::~DrawingArea [in-charge]()'
>>>>>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/../../../libgtkbonus.so:
>>>>>undefined reference to `virtual thunk [v:0,-24] to
>>>>>Gtk::GL::DrawingArea::~DrawingArea [in-charge deleting]()'
>>>>>
>>>>>Now I have a library (libgtkbonus) that uses gtkglextmm, as well as the
>>>>>main program. In the library I use the Gtk::GL::DrawingArea, but not in
>>>>>the main program. I have compaired my use of this widget to that in
>>>>>simple-darea.cc, and can find only one difference. The
>>>>>Gtk::GL::DrawingArea in simple-darea.cc is initialized with a "config"
>>>>>parameter, and mine is not. I have my glconfig code inside the
>>>>>sub-class' constructor.
>>>>
>>>>
>>>>I'm not familiar with the error message, but weird linker problems with
>>>>C++ libraries are usually caused by trying to link together binaries
>>>>that have been built with different versions of gcc.  Make sure that 
>>>
>>>all
>>>
>>>>of the libraries that you are linking and your application are all 
>>>
>>>built
>>>
>>>>with the same gcc.
>>>>
>>>>Tim
>>>>
>>>>
>>>>_______________________________________________
>>>>gtkglext-list mailing list
>>>>[email protected]
>>>>http://mail.gnome.org/mailman/listinfo/gtkglext-list
>>>>
>>>
>>>_______________________________________________
>>>gtkglext-list mailing list
>>>[email protected]
>>>http://mail.gnome.org/mailman/listinfo/gtkglext-list
>>>
>>
> _______________________________________________
> gtkglext-list mailing list
> [email protected]
> http://mail.gnome.org/mailman/listinfo/gtkglext-list
> 
_______________________________________________
gtkglext-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtkglext-list

Reply via email to