Re: Gtkmm 3.0 valgrind



Ok

i have found this article about valgrind and gtk :�http://live.gnome.org/Valgrind

"G_SLICE and G_DEBUG env vars make sure to turn off glib's memory optimizations, so that they do not confuse valgrind."

when i use :

G_SLICE=always-malloc�G_DEBUG=gc-friendly�valgrind�--tool=memcheck�--leak-check=full�--leak-resolution=high�--num-callers=20�--log-file=vgdump�your-program

i get the same errors.
i comple and run the application in�x86_64 platform. Gtkmm is compatible with x86_64 ?

Thanks
Sylvain

2011/8/5 Krzesimir Nowak <qdlacz gmail com>
2011/8/4 sylvain mouquet <sylvain mouquet gmail com>:
> Hi,
> I use this little example :
> #include <gtkmm.h>
> int main(int argc, char *argv[])
> {
> � Gtk::Main kit(argc, argv);
> � Gtk::Window window;
> � Gtk::Main::run(window);
> � return EXIT_SUCCESS;
> }
> g++ sample.cpp -o simple `pkg-config gtkmm-3.0 --cflags --libs`
> i get this error with valgrind :
> sylvain2@sylvain-desktop:~/Bureau/dev/gtkmm3$ valgrind ./simple
> ==25595== Memcheck, a memory error detector
> ==25595== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
> ==25595== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
> ==25595== Command: ./simple
> ==25595==
> ==25595== Conditional jump or move depends on uninitialised value(s)
> ==25595== � �at 0x9AC30CB: __GI___strcasecmp_l (strcmp.S:243)
> ==25595== � �by 0x9A5CF60: __gconv_open (gconv_open.c:70)
> ==25595== � �by 0x9A6B106: _nl_find_msg (dcigettext.c:990)
> ==25595== � �by 0x9A6B818: __dcigettext (dcigettext.c:654)
> ==25595== � �by 0x5FCF98E: gtk_get_option_group (gtkmain.c:976)
> ==25595== � �by 0x5FCFBA1: gtk_parse_args (gtkmain.c:1088)
> ==25595== � �by 0x5FCFC18: gtk_init_check (gtkmain.c:1129)
> ==25595== � �by 0x5FCFC48: gtk_init (gtkmain.c:1184)
> ==25595== � �by 0x51269BB: Gtk::Main::init(int*, char***, bool)
> (main.cc:304)
> ==25595== � �by 0x5126B55: Gtk::Main::Main(int&, char**&, bool)
> (main.cc:257)
> ==25595== � �by 0x400B8C: main (in /home/sylvain2/Bureau/dev/gtkmm3/simple)
> ==25595==
> ==25595== Use of uninitialised value of size 8
> ==25595== � �at 0x9AC5204: __GI___strcasecmp_l (strcmp.S:2257)
> ==25595== � �by 0x9A5CF60: __gconv_open (gconv_open.c:70)
> ==25595== � �by 0x9A6B106: _nl_find_msg (dcigettext.c:990)
> ==25595== � �by 0x9A6B818: __dcigettext (dcigettext.c:654)
> ==25595== � �by 0x5FCF98E: gtk_get_option_group (gtkmain.c:976)
> ==25595== � �by 0x5FCFBA1: gtk_parse_args (gtkmain.c:1088)
> ==25595== � �by 0x5FCFC18: gtk_init_check (gtkmain.c:1129)
> ==25595== � �by 0x5FCFC48: gtk_init (gtkmain.c:1184)
> ==25595== � �by 0x51269BB: Gtk::Main::init(int*, char***, bool)
> (main.cc:304)
> ==25595== � �by 0x5126B55: Gtk::Main::Main(int&, char**&, bool)
> (main.cc:257)
> ==25595== � �by 0x400B8C: main (in /home/sylvain2/Bureau/dev/gtkmm3/simple)
> ==25595==
> ==25595== Use of uninitialised value of size 8
> ==25595== � �at 0x9AC5208: __GI___strcasecmp_l (strcmp.S:2258)
> ==25595== � �by 0x9A5CF60: __gconv_open (gconv_open.c:70)
> ==25595== � �by 0x9A6B106: _nl_find_msg (dcigettext.c:990)
> ==25595== � �by 0x9A6B818: __dcigettext (dcigettext.c:654)
> ==25595== � �by 0x5FCF98E: gtk_get_option_group (gtkmain.c:976)
> ==25595== � �by 0x5FCFBA1: gtk_parse_args (gtkmain.c:1088)
> ==25595== � �by 0x5FCFC18: gtk_init_check (gtkmain.c:1129)
> ==25595== � �by 0x5FCFC48: gtk_init (gtkmain.c:1184)
> ==25595== � �by 0x51269BB: Gtk::Main::init(int*, char***, bool)
> (main.cc:304)
> ==25595== � �by 0x5126B55: Gtk::Main::Main(int&, char**&, bool)
> (main.cc:257)
> ==25595== � �by 0x400B8C: main (in /home/sylvain2/Bureau/dev/gtkmm3/simple)
> ==25595==
> ==25595== Invalid read of size 8
> ==25595== � �at 0x9AC532F: __GI___strncasecmp_l (strcmp.S:213)
> ==25595== � �by 0x9A7BFAE: ____strtod_l_internal (strtod_l.c:577)
> ==25595== � �by 0x8DF14D0: g_ascii_strtod (in
> /lib/x86_64-linux-gnu/libglib-2.0.so.0.2800.6)
> ==25595== � �by 0xF249D66: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF261483: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF262BD1: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2639B4: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF266C3E: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2675EA: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF6F1728: xmlParseStartTag (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6F9F1E: ??? (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6FACEF: xmlParseChunk (in /usr/lib/libxml2.so.2.7.8)
> ==25595== �Address 0xd16e060 is 0 bytes inside a block of size 7 alloc'd
> ==25595== � �at 0x4C2901C: malloc (vg_replace_malloc.c:236)
> ==25595== � �by 0x8DD8A62: g_malloc (in
> /lib/x86_64-linux-gnu/libglib-2.0.so.0.2800.6)
> ==25595== � �by 0x8DF106D: g_strdup (in
> /lib/x86_64-linux-gnu/libglib-2.0.so.0.2800.6)
> ==25595== � �by 0xF262B9E: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2639B4: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF266C3E: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2675EA: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF6F1728: xmlParseStartTag (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6F9F1E: ??? (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6FACEF: xmlParseChunk (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF26878E: rsvg_handle_write (in
> /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF03EC10: ??? (in
> /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so)
> ==25595==
> ==25595== Invalid read of size 8
> ==25595== � �at 0x9AC5337: __GI___strncasecmp_l (strcmp.S:215)
> ==25595== � �by 0x9A7BFAE: ____strtod_l_internal (strtod_l.c:577)
> ==25595== � �by 0x8DF14D0: g_ascii_strtod (in
> /lib/x86_64-linux-gnu/libglib-2.0.so.0.2800.6)
> ==25595== � �by 0xF249D66: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF261483: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF262BD1: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2639B4: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF266C3E: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2675EA: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF6F1728: xmlParseStartTag (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6F9F1E: ??? (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6FACEF: xmlParseChunk (in /usr/lib/libxml2.so.2.7.8)
> ==25595== �Address 0xd16e068 is 1 bytes after a block of size 7 alloc'd
> ==25595== � �at 0x4C2901C: malloc (vg_replace_malloc.c:236)
> ==25595== � �by 0x8DD8A62: g_malloc (in
> /lib/x86_64-linux-gnu/libglib-2.0.so.0.2800.6)
> ==25595== � �by 0x8DF106D: g_strdup (in
> /lib/x86_64-linux-gnu/libglib-2.0.so.0.2800.6)
> ==25595== � �by 0xF262B9E: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2639B4: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF266C3E: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF2675EA: ??? (in /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF6F1728: xmlParseStartTag (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6F9F1E: ??? (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF6FACEF: xmlParseChunk (in /usr/lib/libxml2.so.2.7.8)
> ==25595== � �by 0xF26878E: rsvg_handle_write (in
> /usr/lib/librsvg-2.so.2.32.1)
> ==25595== � �by 0xF03EC10: ??? (in
> /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so)
> ==25595==
> What is the problem ?
> Thanks,
> Sylvain
>
> _______________________________________________
> gtkmm-list mailing list
> gtkmm-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtkmm-list
>
>

Maybe try running your application with G_SLICE environment variable
set to always-malloc. In general, this doesn't have anything to do
with gtkmm - more like with GTK+, which gtkmm is wrapping.



--
Cordialement,
Sylvain


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