[fpc-pascal] Building trunk

C Western l at c-m-w.me.uk
Sat Dec 1 11:48:41 CET 2018


On 30/11/2018 10:26, Cyrax wrote:
> On 30/11/2018 12:23, Cyrax wrote:
>> On 30/11/2018 11:12, C Western wrote:
>>> On 30/11/2018 04:23, Cyrax wrote:
>>>> On 30/11/2018 00:53, C Western wrote:
>>>>> On 26/11/2018 22:46, - - wrote:
>>>>>> An additional note - it may well be a ld version issue. On Ubuntu 
>>>>>> the ld version is 2.30, but on Fedora ld reports 2.31.1-13.fc29. 
>>>>>> (Maybe I should have held off upgrading to Fedora 29...)
>>>>>>
>>>>>> Colin
>>>>>> _______________________________________________
>>>>>> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
>>>>>> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>>>>>
>>>>> Looking at this a little more I think the headers are simply not 
>>>>> available to the program. Simply commenting out the INITTLS call 
>>>>> allows the compiler to be built successfully. I note that 
>>>>> multi-threaded programs don't call it (at least those using 
>>>>> cthreads) and if the program isn't multi-threaded the call to 
>>>>> INITTLS is most likely not needed so I suspect this would fix most 
>>>>> use cases. My main non-gui program (multi-threaded) runs fine. 
>>>>> However on Fedora 29 32 bit builds on 64 bit systems are broken 
>>>>> for lazarus because the 32 bit -devel packages are broken:
>>>>>
>>>>> https://bugzilla.redhat.com/show_bug.cgi?id=1651231
>>>>>
>>>>> https://bugzilla.redhat.com/show_bug.cgi?id=1645328
>>>>>
>>>>> so maybe I should just conclude that 32 bit apps are broken on 
>>>>> Fedora.
>>>>>
>>>>> Colin
>>>>>
>>>>> _______________________________________________
>>>>> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
>>>>> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>>>>
>>>> Can you test if patch from my bug report 
>>>> <url:https://bugs.freepascal.org/view.php?id=34475> fixes your 
>>>> problem? You can omit changes for x86_64 target from that patch.
>>>>
>>>>
>>>> _______________________________________________
>>>> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
>>>> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>>>
>>> This is loader-abitag.diff? With that applied, both 64 and 32 bit 
>>> fpc trunk build, and basic testing indicates that they are working 
>>> fine. I note however that compiling a basic "Hello World" program 
>>> now produces a dynamically linked, rather than a statically linked 
>>> executable, and INITTLS is not called.
>>>
>>> Colin
>>>
>>> _______________________________________________
>>> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
>>> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>>
>> Strange. All my (32/64 bits) binaries are static ones.
>>
>> What I can see at seeing the source code is that INITTLS is only 
>> defined for i386 target.
>>
>> _______________________________________________
>> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
>> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
>
> Oh, I forgot to mention that I use Arch Linux. I run the i686 and 
> x86_64 versions of Arch as an LXC containers.
>
> _______________________________________________
> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Sorry - my statement about "Hello World" producing a dynamically linked 
executable was wrong - I must have mixed up the source file. It now 
behaves as I would expect, and can recommend your patch. I will add a 
note in the bug tracker

Colin




More information about the fpc-pascal mailing list