[Buildroot] [PATCH v2, 1/1] package/kvm-unit-tests: fix build without ssp on x86_64

Arnout Vandecappelle arnout at mind.be
Tue Jun 4 20:13:34 UTC 2019



On 01/06/2019 15:34, Yann E. MORIN wrote:
> Arnout, All,
> 
> On 2019-05-26 20:20 +0200, Arnout Vandecappelle spake thusly:
>> On 26/05/2019 00:22, Fabrice Fontaine wrote:
>>> Makefile tries to detect stack-protector which will result in build
>>> failure on x86_64 if ssp is not available on host compiler so disable
>>> stack protector through EXTRA_CFLAGS
>>
>>  I would like to actually understand the failure though... The error is:
>>
>> /usr/bin/ld: x86/realmode.o: in function `print_serial_u32':
>> .../x86/realmode.c:104: undefined reference to `__stack_chk_fail'
>>
>>  However, realmode.c is built with
>>
>> gcc  -mno-red-zone -m32 -O1 -g -MMD -MF x86/.realmode.d  -Wall -Wwrite-strings
>> -Wclobbered -Wempty-body -Wuninitialized -Wignored-qualifiers
>> -Wunused-but-set-parameter  -fno-omit-frame-pointer    -Wno-frame-address
>> -fno-pic  -no-pie -Wmissing-parameter-type -Wold-style-declaration
>> -Woverride-init -std=gnu99 -ffreestanding -I
>> /data/buildroot/buildroot-test/instance-1/output/build/kvm-unit-tests-kvm-unit-tests-20171020/lib
>> -I
>> /data/buildroot/buildroot-test/instance-1/output/build/kvm-unit-tests-kvm-unit-tests-20171020/lib/x86
>> -I lib   -c -o x86/realmode.o x86/realmode.c
>>
>>  So, stack-protector is *not* enabled... So what the hell is going on here?
>>
>>  It seems to only happen on Xogium's Arch Linux server. Maybe there's something
>> weird going on with that server?
> 
> That's because:
> 
>   - kvm-unit-tests, on x86_64 target, uses the host compiler to build:
>     https://git.buildroot.org/buildroot/tree/package/kvm-unit-tests/kvm-unit-tests.mk#n34
> 
>   - Xogium's autobuilder is running Arch Linux, which enables SSP by
>     default, yes.

... and it does that in a way that is incompatible with -nostdlib, apparently?

 Ubuntu also enables stack-protector by default (since 12.10 I think), so why
doesn't it happen on Ubuntu?

 Smells like a broken distro to me...

 Xogium, could you investigate this? Or someone else with Arch?

 Regards,
 Arnout




More information about the buildroot mailing list