> Tobias, could you find the -class method on NSObject in NSObject.m in
> GNUstep-base, and change it to this:
>
> - (Class)class
> {
>        Class cls = object_getClass(self);
>        if (class_isMetaClass(cls))
>        {
>                return (Class)self;
>        }
>        return cls;
> }


Tried this but the segfault still turns up :-( For what it's worth I fired
up gdb once more:

[...]
Making all in Tools ...
Making all for tool make_services...
 Compiling file make_services.m ...
 Linking tool make_services ...
Making all for tool set_show_service...
 Compiling file set_show_service.m ...
 Linking tool set_show_service ...
Making all for tool gopen...
 Compiling file gopen.m ...
 Linking tool gopen ...
Making all for tool gclose...
 Compiling file gclose.m ...
 Linking tool gclose ...
Making all for tool gcloseall...
 Compiling file gcloseall.m ...
 Linking tool gcloseall ...
Making all for service GSspell...
 Creating GSspell.service/....
 Compiling file GSspell.m ...
 Linking service GSspell ...
 Creating GSspell.service/Resources...
 Creating GSspell.service/Resources/Info-gnustep.plist...
Segmentation fault
make[3]: *** [GSspell.service/Resources/Info-gnustep.plist] Error 1
make[2]: *** [GSspell.all.service.variables] Error 2
make[1]: *** [internal-all] Error 2
make: *** [internal-all] Error 2

$ gdb plmerge
GNU gdb (GDB) 7.2-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/local/bin/plmerge...done.
(gdb) run
Starting program: /usr/local/bin/plmerge
[Thread debugging using libthread_db enabled]
[New Thread 0xb7fe9b70 (LWP 30193)]

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) bt
#0  0x00000000 in ?? ()
#1  0x0033687e in -[NSObject autorelease] (self=Not enough elements for
DW_OP_swap. Need 2, have 0.
) at NSObject.m:1622
#2  0x00327bd1 in +[NSMethodSignature signatureWithObjCTypes:] (
    t=0x41d6a0 "#8@0:4", _cmd=0x572b98, self=0x5419b0)
    at NSMethodSignature.m:442
#3  0x003df925 in gs_objc_msg_forward2 (receiver=<value optimized out>,
    sel=<value optimized out>) at GSFFIInvocation.m:174
#4  0x003df833 in gs_objc_msg_forward3 (receiver=<value optimized out>,
    op=<value optimized out>) at GSFFIInvocation.m:242
#5  0x005ae9db in objc_msg_lookup_internal (receiver=<value optimized out>,
    selector=<value optimized out>) at sendmsg2.c:96
#6  objc_msg_lookup (receiver=<value optimized out>,
    selector=<value optimized out>) at sendmsg2.c:321
#7  0x00335abd in +[NSObject initialize] (_cmd=Unhandled dwarf expression
opcode 0x0
) at NSObject.m:962
#8  0x005a5f07 in objc_send_initialize (object=<value optimized out>)
    at dtable.c:608
#9  0x005a5d43 in objc_send_initialize (object=<value optimized out>)
    at dtable.c:549
#10 0x005ae85f in objc_msg_lookup_internal (receiver=<value optimized out>,
    selector=<value optimized out>) at sendmsg2.c:62
#11 objc_msg_lookup (receiver=<value optimized out>,
    selector=<value optimized out>) at sendmsg2.c:321
#12 0x08049610 in main (env=0xa800a5ff, argv=0xf0a800a5, argc=-1005568)

I will try to compile GNUstep and libobjc2 using gcc (like Quentin) and
report back.
_______________________________________________
Etoile-dev mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-dev

Reply via email to