Hi fred,

You are right, libgnustep-corebase is linked with the GCC version of
libobjc (libobjc.so.3)
while the test tools are linked with gnustep libobjc
(/usr/local/lib/libobjc.so.4).

I don't know how this can happen and this is the first time for me.
It is probably a problem with the configure script of corebase as it
never happens with only GNUmake files, but I don't know how to correct it.

Benoît


$ ldd Tests/CFArray/obj/create
        linux-vdso.so.1 =>  (0x00007fff71934000)
        libgnustep-base.so.1.24 =>
/usr/GNUstep/Local/Library/Libraries/libgnustep-base.so.1.24
(0x00007f71e4c1a000)
        libgnustep-corebase.so.0 => not found
        /usr/local/lib/libobjc.so.4 (0x00007f71e49cc000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x00007f71e47af000)*
        ...


$ ldd Source/obj/libgnustep-corebase.so.0.0.1
        linux-vdso.so.1 =>  (0x00007fff7093b000)
        libobjc.so.3 => /usr/lib/x86_64-linux-gnu/libobjc.so.3
(0x00007f8464bb8000)
        libicui18n.so.48 => /usr/lib/libicui18n.so.48 (0x00007f84647f0000)
        libicuuc.so.48 => /usr/lib/libicuuc.so.48 (0x00007f8464485000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x00007f8464268000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8463eab000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1
(0x00007f8463c94000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(0x00007f8463994000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f846369a000)
        libicudata.so.48 => /usr/lib/libicudata.so.48 (0x00007f8462329000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f8462125000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f8465059000)



Le 26/05/2012 18:23, Fred Kiefer a écrit :
> The gdb backtrace that you sent looks like you have two different
> versions ob libobjc linked in. Could you please test, using ldd,
> whether this is the case. And if so, fix theroblem and try again.
>
> Fred
>
> On the road
>
> Am 26.05.2012 um 17:42 schrieb Benoît Garrigues <[email protected]
> <mailto:[email protected]>>:
>
>> Hi Stef,
>>
>> I tested revision 35163 on Ubuntu 12.04 64bits with
>> - clang 3.0 (from ubuntu)
>> - gnustep libobjc2 1.6.
>> - gnustep base 1.24
>>
>>
>> First, there are some warnings at compile time :
>>
>>  Compiling file CFLocale.c ...
>> CFLocale.c:312:19: warning: result of comparison against a string
>> literal is unspecified (use strncmp instead) [-Wstring-compare]
>>       if (context == (const void*)ICU_CALENDAR_KEY)
>>                   ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> CFLocale.c:329:19: warning: result of comparison against a string
>> literal is unspecified (use strncmp instead) [-Wstring-compare]
>>       if (context == (const void*)ICU_CALENDAR_KEY)
>>                   ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> 2 warnings generated.
>>
>>  Compiling file NSCFError.m ...
>> NSCFError.m:48:10: warning: incompatible pointer types returning
>> 'CFErrorRef' (aka 'NSError *') from a function with result type
>>       'NSCFError *' [-Wincompatible-pointer-types]
>>   return CFErrorCreate (NULL, domain, code, userInfo);
>>          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> 1 warning generated.
>>
>>
>>
>> Tests results : all tests have compilation warnings and most of them
>> produce a core dump.
>>
>>
>> $ make check
>> This is gnustep-make 2.6.2. Type 'make print-gnustep-make-help' for help.
>> Making check in Source ...
>> make[1]: Rien à faire pour « check ».
>> Making check in Tests ...
>> Checking for presence of test subdirectories ...
>> --- Running tests in CFArray ---
>>
>> CFArray/create.m:
>> Failed file:     create.m aborted without running all tests!
>>
>> CFArray/mutablearray.m:
>> Failed file:     mutablearray.m aborted without running all tests!
>> --- Running tests in CFAttributedString ---
>>
>> CFAttributedString/general.m:
>> Failed file:     general.m aborted without running all tests!
>>
>> CFAttributedString/mutable.m:
>> Failed file:     mutable.m aborted without running all tests!
>> --- Running tests in CFBinaryHeap ---
>>
>> CFBinaryHeap/general.m:
>> Failed file:     general.m aborted without running all tests!
>> --- Running tests in CFCalendar ---
>>
>> CFCalendar/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>>
>> CFCalendar/create.m:
>> Failed file:     create.m aborted without running all tests!
>> --- Running tests in CFCharacterSet ---
>>
>> CFCharacterSet/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>>
>> CFCharacterSet/mutable.m:
>> Failed file:     mutable.m aborted without running all tests!
>> --- Running tests in CFData ---
>>
>> CFData/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>> --- Running tests in CFDate ---
>>
>> CFDate/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>> --- Running tests in CFDateFormatter ---
>>
>> CFDateFormatter/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>> --- Running tests in CFLocale ---
>>
>> CFLocale/create.m:
>> Failed file:     create.m aborted without running all tests!
>>
>> CFLocale/displayvalues.m:
>> Failed build:
>>
>> CFLocale/identifier.m:
>> Failed build:
>>
>> CFLocale/values.m:
>> Failed file:     values.m aborted without running all tests!
>> --- Running tests in CFNumber ---
>>
>> CFNumber/general.m:
>> Failed file:     general.m aborted without running all tests!
>> --- Running tests in CFNumberFormatter ---
>>
>> CFNumberFormatter/create.m:
>> Failed file:     create.m aborted without running all tests!
>>
>> CFNumberFormatter/format.m:
>> Failed build:
>>
>> CFNumberFormatter/parse.m:
>> Failed file:     parse.m aborted without running all tests!
>> --- Running tests in CFRuntime ---
>>
>> CFRuntime/runtime.m:
>> Failed file:     runtime.m aborted without running all tests!
>> --- Running tests in CFString ---
>>
>> CFString/create.m:
>> Failed build:
>>
>> CFString/encodings.m:
>> Failed file:     encodings.m aborted without running all tests!
>>
>> CFString/format.m:
>> Failed build:
>>
>> CFString/general.m:
>> Failed file:     general.m aborted without running all tests!
>>
>> CFString/mutablestring.m:
>> Failed build:
>> --- Running tests in CFTimeZone ---
>>
>> CFTimeZone/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>>
>> CFTimeZone/general.m:
>> Failed file:     general.m aborted without running all tests!
>> --- Running tests in CFTree ---
>>
>> CFTree/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>> --- Running tests in CFURL ---
>>
>> CFURL/create.m:
>> Failed file:     create.m aborted without running all tests!
>>
>> CFURL/escaping.m:
>> Failed build:
>>
>> CFURL/file_system_path.m:
>> Failed file:     file_system_path.m aborted without running all tests!
>>
>> CFURL/ref_resolution.m:
>> Failed build:
>> --- Running tests in CFURLAccess ---
>>
>> CFURLAccess/basic.m:
>> Failed file:     basic.m aborted without running all tests!
>> --- Running tests in CFUUID ---
>>
>> CFUUID/create.m:
>> Failed file:     create.m aborted without running all tests!
>>
>>      27 Failed files
>>       8 Failed builds
>>
>>
>>
>> When launching CFArray/create test with gdb, the backtrace is the
>> following :
>>
>> Starting program:
>> /home/benoit/Projets/OpenSource/objc/GNUstep-anonymous/dev-libs/corebase/Tests/CFArray/obj/create
>> [Thread debugging using libthread_db enabled]
>> Using host libthread_db library
>> "/lib/x86_64-linux-gnu/libthread_db.so.1".
>> Loading two versions of Protocol.  The class that will be used is
>> undefined
>> Loading two versions of Object.  The class that will be used is undefined
>> [New Thread 0x7ffff235f700 (LWP 26352)]
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> 0x00007ffff708d687 in objc_msg_lookup_sender () from
>> /usr/local/lib/libobjc.so.4
>> (gdb) bt
>> #0  0x00007ffff708d687 in objc_msg_lookup_sender () from
>> /usr/local/lib/libobjc.so.4
>> #1  0x00007ffff7931142 in GSPrivateBuildStrings () at
>> /home/benoit/src/gnustep-base-1.24.0/Source/externs.m:239
>> #2  0x00007ffff7869cc3 in +[NSObject initialize] (self=<optimized
>> out>, _cmd=<optimized out>) at
>> /home/benoit/src/gnustep-base-1.24.0/Source/NSObject.m:1142
>> #3  0x00007ffff70844c4 in objc_send_initialize () from
>> /usr/local/lib/libobjc.so.4
>> #4  0x00007ffff70842b1 in objc_send_initialize () from
>> /usr/local/lib/libobjc.so.4
>> #5  0x00007ffff708d792 in objc_msg_lookup_sender () from
>> /usr/local/lib/libobjc.so.4
>> #6  0x00007ffff72d1807 in NSCFInitialize () at NSCFType.m:51
>> #7  0x00007ffff70823c6 in objc_send_load_message () from
>> /usr/local/lib/libobjc.so.4
>> #8  0x00007ffff7082ee7 in objc_resolve_class () from
>> /usr/local/lib/libobjc.so.4
>> #9  0x00007ffff7082fc3 in objc_resolve_class_links () from
>> /usr/local/lib/libobjc.so.4
>> #10 0x00007ffff7086e97 in __objc_exec_class () from
>> /usr/local/lib/libobjc.so.4
>> #11 0x00007ffff7de9306 in call_init (l=<optimized out>, argc=1,
>> argv=0x7fffffffdc68, env=0x7fffffffdc78) at dl-init.c:85
>> #12 0x00007ffff7de93df in call_init (env=<optimized out>,
>> argv=<optimized out>, argc=<optimized out>, l=<optimized out>) at
>> dl-init.c:52
>> #13 _dl_init (main_map=0x7ffff7ffe2c8, argc=1, argv=0x7fffffffdc68,
>> env=0x7fffffffdc78) at dl-init.c:134
>> #14 0x00007ffff7ddb6ea in _dl_start_user () from
>> /lib64/ld-linux-x86-64.so.2
>> #15 0x0000000000000001 in ?? ()
>> #16 0x00007fffffffdf8d in ?? ()
>> #17 0x0000000000000000 in ?? ()
>>
>>
>> The test.log file is attached.
>>
>>
>> Best regards,
>> Benoît
>>
>>
>> Le 21/05/2012 17:42, Stefan Bidi a écrit :
>>> For those of you not familiar with the project, the GNUstep-corebase
>>> project is a free software implementation of the CoreFoundation library.
>>>
>>> I plan on making a release of GNUstep-corebase in a few weeks. 
>>> Since this is the first release, and the code is still alpha quality
>>> at best, I have decided to do a prolonged testing phase.  This
>>> testing phase will be split in 2 subphases.
>>>
>>> The first will be a 3 week period, ending June 10th.  This will be
>>> the time to test the code and look for inconsistencies. 
>>> Essentially, I want to make sure the code compiles in your favorite
>>> platform and all tests pass.  New tests can be added to the existing
>>> CF-types only, there is no plans to add another type/class before
>>> the release.  I will still be doing some work on the library at this
>>> time, but do not plan on adding anything new.
>>>
>>> The second phase will end on June 24th and will lead to the
>>> release.  This is your normal code freeze.  I'd like to get the bugs
>>> that were found during the previous phase corrected during this time
>>> if they were not already fixed.  I really do not want to add any new
>>> tests at this stage unless it is something that can be easily
>>> fixed.  Anything requiring a deeper look will be postponed to the
>>> next release.
>>>
>>> To build -corebase you will need gnustep-make, gnustep-base,
>>> libobjc, libicu and the zoneinfo directory.  The dependency on
>>> gnustep-base and libobjc will be optional at the time of release. 
>>> Being a pure C library, corebase doesn't need these libraries unless
>>> you want to interface with the objc runtime (ie toll-free bridged
>>> classes).  I have not decided what to do with libicu at this point
>>> since it provides core functionality.  If there is enough demand, it
>>> will be optional as well.
>>>
>>> Adam, would you be able to make the release during the week of June
>>> 24th?  I can move the dates around if you need me to.
>>>
>>> Thanks
>>> Stef
>>>
>>>
>>> _______________________________________________
>>> Discuss-gnustep mailing list
>>> [email protected]
>>> https://lists.gnu.org/mailman/listinfo/discuss-gnustep
>> <tests.log>
>> _______________________________________________
>> Discuss-gnustep mailing list
>> [email protected] <mailto:[email protected]>
>> https://lists.gnu.org/mailman/listinfo/discuss-gnustep
_______________________________________________
Discuss-gnustep mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to