From: Olivier L. <oli...@ce...> - 2014-07-08 11:32:10
|
Still progressing. No more segfault and the setSizeGribEnabled is fixed. Olivier. Le Sunday 6 July 2014 23:28:23 oli...@fr... a écrit : > I've worked on perl-Qt fix all the WE and came to a big patch. (posted here: > https://code.google.com/p/perlqt4/issues/detail?can=2&start=0&num=100&q=&co > lspec=ID%20Type%20Status%20Priority%20Milestone%20Owner%20Summary&groupby=&s > ort=&id=46 ) > > perl-Qt (puic4) will now generate valid perl code. > Unfortunately, I don't know it the generated code means somethiong coherent > for Qt. I've just fixed and completed the existing puic4 code. > I have just a small perl issue in setupUi in Ui_NetBootMgr.pl > => The line: > $netBootMgr->setSizeGripEnabled( 1 ); > --- Error: Method does not exist or not provided by this binding: > QWidget::setSizeGripEnabled(), > called at /usr/share/perl5/vendor_perl/Ui_NetBootMgr.pm line 129 > 'use QtCore4::debug qw(ambiguous)' for more information. > > Is the generated code bad, or is it something that is incomplet or not yet > implemented in QtCore4.so??? > > The beahviour is really different from perl-Qt3. Now you must add some perl > files NetBootMgr.pm and SureDialog.pm that will respectively make use of > their Ui_ dedicated file. As I've never ever coded in Qt, I don't know what > to put inside those files. (just copypasted the minimum from example files) > > For the moment, if you look at pkgsrc/netbootmgr/trun svn (svn update) > you'll see my Work In Progress (WIP) if you make rpm in there and try to > start netbootmgr, it segfault. Thus I imagine that because the perl code is > incomplete and because Qt4Core.so is not fault tolerent, it crashes (null > pointer, something is not declared in time). > > the output: > Program received signal SIGSEGV, Segmentation fault. > Q3ListViewItem::Q3ListViewItem (this=0x132f540, parent=0x0) at > itemviews/q3listview.cpp:425 425 parent->insertItem(this); > Missing separate debuginfos, use: debuginfo-install > kdelibs-4.11.5-2.fc19.x86_64 pcre-8.32-8.fc19.x86_64 (gdb) bt > #0 Q3ListViewItem::Q3ListViewItem (this=0x132f540, parent=0x0) at > itemviews/q3listview.cpp:425 #1 0x00007fffef325def in x_Q3ListViewItem > (x1=<optimized out>, this=<optimized out>) at > /usr/src/debug/smokeqt-4.11.5/x86_64-redhat-linux-gnu/qt3support/x_11.cpp:2 > 598 #2 x_2 (x=<optimized out>) at > /usr/src/debug/smokeqt-4.11.5/x86_64-redhat-linux-gnu/qt3support/x_11.cpp:2 > 595 #3 __smokeqt3support::xcall_Q3ListViewItem (xi=1, obj=0x1224e40, > args=0x12de930) at > /usr/src/debug/smokeqt-4.11.5/x86_64-redhat-linux-gnu/qt3support/x_11.cpp:3 > 544 #4 0x00007ffff145bc7a in PerlQt4::MethodCall::callMethod() () from > /usr/lib64/perl5/vendor_perl/auto/QtCore4/QtCore4.so #5 0x00007ffff1457a78 > in PerlQt4::MethodCallBase::next() () from > /usr/lib64/perl5/vendor_perl/auto/QtCore4/QtCore4.so #6 0x00007ffff1469ed3 > in XS_AUTOLOAD () from /usr/lib64/perl5/vendor_perl/auto/QtCore4/QtCore4.so > #7 0x00000032178baf5f in Perl_pp_entersub (my_perl=0x604010) at > pp_hot.c:2778 #8 0x00000032178b3796 in Perl_runops_standard > (my_perl=0x604010) at run.c:41 #9 0x00000032178510f0 in S_run_body > (oldscope=<optimized out>, my_perl=<optimized out>) at perl.c:2402 #10 > perl_run (my_perl=0x604010) at perl.c:2320 > #11 0x0000000000400d99 in main (argc=2, argv=0x7fffffffdbd8, > env=0x7fffffffdbf0) at perlmain.c:120 (gdb) q > > I've worked on issues 44 and 46 ( > https://code.google.com/p/perlqt4/issues/list ) and posted issues 57, 58, > 59, 60 . > > Regards , > > PS: The kdebindings repo is more uptodate that official perlqt. The Author > will resync. the kdebinding repo has support for perl 5.18.0 while perlqt > at google hasn't. Regarding puic4, both have the same patch level with > total icomplete Qt3Support4 module. My above patch fix all the > implementation except 3 objects that are empty and thus I don't know what > to generate. > > Olivier. Cordialement, Olivier. -- Olivier Lahaye DRT/LIST/DIR |