[Kde-bindings] requiring Korundum throws a std::logic_error

Richard Dale rdale at foton.es
Fri Dec 12 10:30:11 UTC 2008


On Thursday 11 December 2008 23:21:46 David Palacio wrote:
> Revision 894897 breaks Korundum for me when I require it. The previous one
> works fine. QtRuby works.
>
> >require 'korundum4'
> >terminate called after throwing an instance of 'std::logic_error'
> >  what():  basic_string::_S_construct NULL not valid
> >Aborted
>
> KDE trunk, GCC 4.3.2
>
> Backtrace from revision 895753:
>
> Program received signal SIGABRT, Aborted.
> [Switching to Thread 0x7f943803f6e0 (LWP 24197)]
> 0x00007f9436f49ed5 in raise () from /lib/libc.so.6
> (gdb) bt
> #0  0x00007f9436f49ed5 in raise () from /lib/libc.so.6
> #1  0x00007f9436f4b3f3 in abort () from /lib/libc.so.6
> #2  0x00007f9432154244 in __gnu_cxx::__verbose_terminate_handler () from
> /usr/lib/libstdc++.so.6
> #3  0x00007f9432152646 in ?? () from /usr/lib/libstdc++.so.6
> #4  0x00007f9432152673 in std::terminate () from /usr/lib/libstdc++.so.6
> #5  0x00007f943215275a in __cxa_throw () from /usr/lib/libstdc++.so.6
> #6  0x00007f94320ef5b7 in std::__throw_logic_error () from
> /usr/lib/libstdc++.so.6
> #7  0x00007f9432130e21 in ?? () from /usr/lib/libstdc++.so.6
> #8  0x00007f9432130ee3 in std::basic_string<char, std::char_traits<char>,
> std::allocator<char> >::basic_string () from /usr/lib/libstdc++.so.6
> #9  0x00007f9433be289b in Smoke (this=0x13b9990, _moduleName=0x7f9433d9e1f0
> "kde",
>     _classes=0x7f94341081e0, _numClasses=590, _methods=0x7f94340d54a0,
> _numMethods=10895,
>     _methodMaps=0x7f94340f5360, _numMethodMaps=10055,
> _methodNames=0x7f943410de20, _numMethodNames=10201,
>     _types=0x7f9434121d00, _numTypes=1754, _inheritanceList=0x7f9434103f20,
> _argumentList=0x7f9434104120,
>     _ambiguousMethodList=0x7f9434107ae0, _castFn=0x7f9433bc7e94 <kde_cast>)
>     at /home/kde/src/KDE/kdebindings/smoke/smoke.h:295
> #10 0x00007f9433be1897 in init_kde_Smoke ()
>     at /home/kde/build/KDE/kdebindings/smoke/kde/smokedata.cpp:42556
> #11 0x00007f9436cf436e in Init_korundum4 ()
>     at /home/kde/src/KDE/kdebindings/ruby/korundum/src/Korundum.cpp:593
> #12 0x00007f9437b70371 in dln_load (file=0x12255e0
> "/home/kde/ruby/bin/korundum4.so") at dln.c:1366
> #13 0x00007f9437b9226e in rb_require_safe (fname=140274571521080, safe=0)
> at eval.c:7398
> #14 0x00007f9437b846a2 in rb_call0 (klass=140274571667760,
> recv=140274571657880, id=10089, oid=10089,
>     argc=1, argv=0x7fff40063410, body=0x7f943801e400, flags=<value
> optimized out>) at eval.c:5904
> #15 0x00007f9437b8480a in rb_call (klass=140274571667760,
> recv=140274571657880, mid=10089, argc=1,
>     argv=0x7fff40063410, scope=1, self=140274571657880) at eval.c:6151
> #16 0x00007f9437b7e8f2 in rb_eval (self=140274571657880, n=<value optimized
> out>) at eval.c:3507
> #17 0x00007f9437b9167b in ruby_exec_internal () at eval.c:1641
> #18 0x00007f9437b916c5 in ruby_exec () at eval.c:1661
> #19 0x00007f9437b916f2 in ruby_run () at eval.c:1671
> #20 0x00000000004008b3 in main (argc=2, argv=0x7fff400642b8, envp=<value
> optimized out>) at main.c:48
We recently change the smoke.h header and it looks like you need to regenerate 
the smoke libs that korundum uses as well as building korundum itself against 
the new header.

-- Richard




More information about the Kde-bindings mailing list