Re: [PATCH 1/1] selftests: timers: use LDLIBS instead of LDFLAGS to link against libpthread

From: Shuah Khan
Date: Wed Jun 28 2017 - 11:12:04 EST


On 06/28/2017 09:00 AM, Fathi Boudra wrote:
> On 28 June 2017 at 17:41, Shuah Khan <shuah@xxxxxxxxxx> wrote:
>> On 06/28/2017 08:37 AM, Fathi Boudra wrote:
>>> On 28 June 2017 at 17:20, Shuah Khan <shuah@xxxxxxxxxx> wrote:
>>>> On 06/28/2017 03:18 AM, Fathi Boudra wrote:
>>>>> timers test fails to build due to undefined reference:
>>>>>
>>>>> aarch64-linaro-linux-gcc --sysroot=/build/tmp-rpb-glibc/sysroots/hikey
>>>>> -O2 -pipe -g -feliminate-unused-debug-types -O3 -Wl,-no-as-needed -Wall
>>>>> -DKTEST -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -lrt -lpthread
>>>>> posix_timers.c
>>>>> -o /build/tmp-rpb-glibc/work/hikey-linaro-linux/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/timers/posix_timers
>>>>> /tmp/cc1FTZzT.o: In function `check_timer_create':
>>>>> /usr/src/debug/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/timers/posix_timers.c:157:
>>>>> undefined reference to `timer_create'
>>>>> /usr/src/debug/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/timers/posix_timers.c:170:
>>>>> undefined reference to `timer_settime'
>>>>> collect2: error: ld returned 1 exit status
>>>>>
>>>>> Use LDLIBS instead of LDFLAGS to properly link against libpthread and fix
>>>>> this build issue.
>>>>>
>>>>> Signed-off-by: Denys Dmytriyenko <denys@xxxxxx>
>>>>> Signed-off-by: Fathi Boudra <fathi.boudra@xxxxxxxxxx>
>>>>
>>>> I can't reproduce this on linux-kselftest next on x86_64. Is this arm64 speocific
>>>> problem? Please try this on linux-kselftest latest.
>>>
>>> yes, I tried linux-kselftest next and can reproduce.
>>> Maybe related to native build vs cross-build?
>>> I don't think it's arm64 specific.
>>>
>>
>> Can you confirm that this change doesn't cause problems in native
>> build environments.
>
> yes, I tested on x86 in native build environment as well. It builds
> and run fine.
>
> I noticed my patchset for LDFLAGS vs LDLIBS changes don't apply
> cleanly on linux-kselftest next branch. I'm happy to respin the serie
> on top of next branch if you're willing to take them.
>

Yeah. I knew your series won't apply on top of linux-kselftest next just
looking at that patches. Hence the question whether or not these problems
have been reproduced on linux-kselftest.

Please redo the patches. The net patch needs to be done on top of

SeongJae Park's fix

selftest/net/Makefile: Specify output with $(OUTPUT)

btw - with the the above fix, I don't see any failures on x86_64.
I am curious why it fails in cross-build? Could you figure out if
your cross-build environment is good.

thanks,
-- Shuah

thanks,
-- Shuah