| Posted on 2008-11-25 23:42:12-08 by gcb in response to 9426 |
| Re: failing to compile in USE_ARCH=64 guise? |
|
As requested- ;
Starting program: /usr/bin/perl -I blib/lib -I blib/arch -MGlib::GenPod -MGlib -e "add_types (qq(doctypes)); Glib::GenPod::set_copyright(qq{Copyright (C) 2003-2008 by the gtk2-perl team.\n\nThis software is licensed under the LGPL. See L<Glib> for a full notice.\n}); Glib::GenPod::set_main_mod(qq(Glib)); xsdoc2pod(q(build/doc.pl), q(blib/lib), q(build/podindex));"
Executing new program: /usr/bin/perl-64
[Thread debugging using libthread_db enabled]
[New Thread 0x7fab721536f0 (LWP 9702)]
Loaded 8 extra types from doctypes
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fab721536f0 (LWP 9702)]
0x00007fab6bcc2da3 in XS_Glib__Type_list_values (my_perl=<value optimized out>,
cv=<value optimized out>) at GType.xs:2619
2619 for ( ; v && v->value_nick && v->value_name ; v++) {
(gdb) bt
#0 0x00007fab6bcc2da3 in XS_Glib__Type_list_values (my_perl=<value optimized out>,
cv=<value optimized out>) at GType.xs:2619
#1 0x000000000046a6bc in Perl_pp_entersub ()
#2 0x0000000000468c4e in Perl_runops_standard ()
#3 0x0000000000464679 in perl_run ()
#4 0x000000000041ecbc in main ()
Regarding valgrind run, yes, I missed -I blib/lib (you missed it too in your example cmdline to run ..which explains my fault ;-), howsoever adding this missing include path (and with debugging still enabled) results in a segfault and no useful info...
valgrind --tool=memcheck --num-callers=100 /usr/bin/perl -I blib/arch -I blib/lib -MGlib::GenPod -MGlib -e "add_types (qq(doctypes)); Glib::GenPod::set_copyright(qq{Copyright (C) 2003-2008 by the gtk2-perl team.\n\nThis software is licensed under the LGPL. See L<Glib> for a full notice.\n}); Glib::GenPod::set_main_mod(qq(Glib)); xsdoc2pod(q(build/doc.pl), q(blib/lib), q(build/podindex));"
==9708== Memcheck, a memory error detector.
==9708== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==9708== Using LibVEX rev 1854, a library for dynamic binary translation.
==9708== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==9708== Using valgrind-3.3.1, a dynamic binary instrumentation framework.
==9708== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==9708== For more details, rerun with: -v
==9708==
Loaded 8 extra types from doctypes
Segmentation fault
FWIW, /usr/bin/perl here is a multiarch wrapper to either /usr/bin/perl-32 or /usr/bin/perl-64, with latter being considered native. This all works just fine in 32bit guise btw. If things are
derailing in Glib::Type::list_values() and (I'm guessing here) this is in GType.xs , a 64bit build attempt throws half a dozen warnings about "cast to pointer from integer of different size" here. More than one .xs throws these warnings -- this is not so in 32bit guise.
Thanks for the help with this - as always, need anything else, just ask
|
| Direct Responses: 9549 | Write a response |