discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: make fails in gnustep base


From: Andreas Fink
Subject: Re: make fails in gnustep base
Date: Tue, 4 Sep 2018 08:56:10 +0200

Here is a simple test case illustrating the problem

TestObject4  inherits from TestObjec3 inherits from TestObject2 inherits from 
TestObject1

All testobjects are compiled into a shared library

do a make ; make install
and then run test1, test2, test3, test4 binaries.
They all run the same code. The only difference is the order of the linkage of 
the shared libraries

Attachment: test2.tar.gz
Description: GNU Zip compressed data



test1 runs correctly.
test2 produces rubbish data.


root@gnustep:~/gitlab/testcase/test2# ./test1
2018-09-04 08:54:42.162 test1[27822:27822] t1= _int1=1
 _int2=2
 _string3=s3
 _int4=4
 _string5=s5
2018-09-04 08:54:42.162 test1[27822:27822] t2= _int1=1
 _int2=2
 _string3=s3
 _int4=4
 _string5=s5
 _int6=6
 _int7=7
 _string8=s8
 _int9=9
 _string10=s10
2018-09-04 08:54:42.162 test1[27822:27822] t3= _int1=331
 _int2=332
 _string3=s333
 _int4=334
 _string5=s335
 _int6=6
 _int7=7
 _string8=s8
 _int9=9
 _string10=s10
2018-09-04 08:54:42.162 test1[27822:27822] t4= _int1=331
 _int2=332
 _string3=s333
 _int4=334
 _string5=s335
 _int6=66
 _int7=77
 _string8=s88
 _int9=99
 _string10=s1010
root@gnustep:~/gitlab/testcase/test2# ./test2
2018-09-04 08:54:51.406 test2[27823:27823] t1= _int1=420758136
 _int2=420758136
 _string3=s5
 _int4=420758136
 _string5=s5
2018-09-04 08:54:51.407 test2[27823:27823] t2= _int1=420758136
 _int2=420758136
 _string3=s5
 _int4=420758136
 _string5=s5
 _int6=9
 _int7=9
 _string8=17545478275073
 _int9=9
 _string10=s10
2018-09-04 08:54:51.407 test2[27823:27823] t3= _int1=425022016
 _int2=425022016
 _string3=s335
 _int4=425022016
 _string5=s335
 _int6=9
 _int7=9
 _string8=17545478275073
 _int9=9
 _string10=s10
2018-09-04 08:54:51.407 test2[27823:27823] t4= _int1=425022016
 _int2=425022016
 _string3=s335
 _int4=425022016
 _string5=s335
 _int6=99
 _int7=99
 _string8=6.934894444458547e-310
 _int9=99
 _string10=s1010



> On 4 Sep 2018, at 07:37, Andreas Fink <afink@list.fink.org> wrote:
> 
> 
> 
>> On 3 Sep 2018, at 23:40, Ivan Vučica <ivan@vucica.net> wrote:
>> 
>> So, uh, libulibtcap depends on code in libasn1? Library order matters
>> to the linker.
> 
> Sure thats why we have linkers. it dynamically links things together.  These 
> are all dynamic libraries so the final linking should find all references or 
> bail out.
> However I do not get a link failure. At the end everything is linked 
> together. I have runtime errors and very bizarre ones. Not crashes but _some_ 
> properties not being set properly.
> 
>> If you can't fix it (and it sounds like you can?) then you can pass
>> --start-group and --end-group to the linker so it performs multiple
>> passes.
>> 
>> If you are passing the options --start-group and --end-group to the
>> compiler instead of the linker, you may need to use -Wl,--start-group
>> and -Wl,--end-group.
>> 
>> What I'm saying depends on the linker, of course, and it's been a
>> while since I needed this, making it hard for me to know which
>> particular linker I'm talking about here. :-)
> 
> I would like to understand whats really happening here. I can understand 
> things like it doesn't find symbols. These things would at least make sense. 
> But this behaviour is very irrational to me.
> 
> 
> 
> 
> _______________________________________________
> Discuss-gnustep mailing list
> Discuss-gnustep@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnustep


reply via email to

[Prev in Thread] Current Thread [Next in Thread]