Re: 11.0 -r301139: WITH_META_MODE=yes vs. "sh: ./make_keys: Exec format error"?

From: Bryan Drewery <bdrewery_at_FreeBSD.org>
Date: Wed, 1 Jun 2016 17:06:17 -0700
On 6/1/2016 4:48 PM, Mark Millard wrote:
> On 2016-Jun-1, at 4:30 PM, Bryan Drewery <bdrewery at FreeBSD.org> wrote:
> 
>> On 6/1/2016 4:29 PM, Bryan Drewery wrote:
>>> On 6/1/2016 4:25 PM, Mark Millard wrote:
>>>> [The example context here for extracted materials is a amd64 -> armv6 cross build.]
>>>>
>>>> In my recent experimentation with WITH_META_MODE=yes I’ve had multiple occasions when after updating /usr/src I attempt buildworld buildkernel and end up with something like:
>>>>> --- lib/ncurses/ncursesw__L ---
>>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/init_keytry.h
>>>>> --- init_keytry.h ---
>>>>> sh: ./make_keys: Exec format error
>>>>> *** [init_keytry.h] Error code 126
>>>>>
>>>>> make[4]: stopped in /usr/src/lib/ncurses/ncursesw
>>>>> 1 error
>>>>>
>>>>> make[4]: stopped in /usr/src/lib/ncurses/ncursesw
>>>>> *** [lib/ncurses/ncursesw__L] Error code 2
>>>> I’ve also had such for powerpc being the target and make toolchain in use (preparing for buildkernel without buildworld).
>>>>
>>>> There are multiple instances of make_keys construction in the builds. Here it looks like:
>>>>> # grep make_keys ~/sys_typescripts/typescript_make_rpi2_nodebug_clang_bootstrap-amd64-host-2016-06-01:15:17:28
>>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/make_keys
>>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncurses/make_keys
>>>>> Building /usr/obj/clang/arm.armv6/usr/src/lib/ncurses/ncursesw/make_keys
>>>>> sh: ./make_keys: Exec format error
>>>> Note that ncursesw has two Building lines above with the same path listed.
>>>>
>>>> cleanworld and then retrying the sequence desired always seems to work but is a complete rebuild.
>>>
>>> I don't understand why you're hitting this. It's an issue that I ran
>>> into and fixed and haven't run into again from several powerpc64 build
>>> tests.
>>>
>>
>> It's possible r301079 reintroduced the bug. I'll find out.
>>
>> -- 
>> Regards,
>> Bryan Drewery
> 
> [All the below is from an amd64 host context.]
> 
> As far as I remember I've not seen "sh: ./make_keys: Exec format error" when powerpc64-gcc or amd64-gcc is in use (my xtoolchain experiments): my src.conf files for such have more in them and various other differences for those because of binding to powerpc64-gcc or amd64-gcc and the related binutils.
> 
> [The below do not involve ports compilers/tools.]
> 
> I have seen "sh: ./make_keys: Exec format error" when clang or gcc 4.2.1 is being used for the cross compiles. My armv6 context has a clang based buildworld and buildkernel. My powerpc kernel builds have a gcc 4.2.1 based buildkernel (no buildworld).
> 
> I've not seen the problem for amd64 targeting amd64 via clang as far as I can remember. I've not tried WITH_META_MODE=yes for any other self-targeting context yet.
> 

Yup it is due to r301079. Will have to think on this. It was a temporary
workaround until bmake was fixed.


-- 
Regards,
Bryan Drewery


Received on Wed Jun 01 2016 - 22:06:23 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:05 UTC