Re: world linker error "can't create dynamic relocation R_AARCH64_LDST64_ABS_LO12_NC against symbol: __stderrp in readonly segment"

From: Bjoern A. Zeeb <bzeeb-lists_at_lists.zabbadoz.net>
Date: Fri, 26 Nov 2021 09:21:54 UTC
On 25 Nov 2021, at 23:53, Greg V via freebsd-arm wrote:

>> On 25 Nov 2021, at 04:38, Bjoern A. Zeeb 
>> <bzeeb-lists@lists.zabbadoz.net> wrote:
>>
>> Hi,
>>
>> I am trying to update one machine (also across the LLVM update) and I 
>> get the below error.
>> Anyone any ideas?
>>
>>
>> ld: error: relocation R_AARCH64_ADR_PREL_PG_HI21 cannot be used 
>> against symbol __stderrp; recompile with -fPIC
>>>>> defined in 
>>>>> base14-251054.3ede04c78c7c726ed79a39d22c65a58d0ecc5d00/arm64.aarch64/tmp/lib/libc.so.7
>>>>> referenced by assert.c
>>>>>              assert.o:(libspl_assertf) in archive 
>>>>> base14-251054.3ede04c78c7c726ed79a39d22c65a58d0ecc5d00/arm64.aarch64/tmp/usr/lib/libspl.a
>
> That would be https://reviews.freebsd.org/D32521#739094 – this was 
> fixed in the final version of the patch that actually was committed 
> though.
>
> And I’ve just checked that it all builds on aarch64 too. Works for 
> me, and presumably for anyone else building world in the last 10 days 
> or so. So that’s weird. Maybe some leftover /usr/obj state somehow 
> causing issues or something?

We found that this particular build issue is caused by WITH_CDDL and 
WITHOUT_ZFS as a result of a recent commit to fix library dependencies 
in that area;  markj has given me a patch and I tested it successfully 
for that specific case last night at almost 2AM;  I assume the issue 
will be solved the next days in main.   Sorry for not following up 
anymore last night right away.

/bz