Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Dec 2019 11:48:09 -0800
From:      Cameron Berkenpas <cam@neo-zeon.de>
Cc:        FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: Building for ELFv2
Message-ID:  <bc598fe4-c296-8c1c-f8c1-098ed4877dfa@neo-zeon.de>
In-Reply-To: <520F197C-DE4D-4C1E-8EFE-71ABDC6148CF@yahoo.com>
References:  <7e305085-f848-62e4-858a-dff3acefa842@neo-zeon.de> <FCDEBB26-32F4-47A1-AC0C-CDC90A1CD638@yahoo.com> <7c9e00c8-17a1-bc20-7c52-2dc87069fca3@neo-zeon.de> <520F197C-DE4D-4C1E-8EFE-71ABDC6148CF@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Has anyone else had this problem building for ELFv2? What is the correct 
approach to get this to build?

On 12/29/19 9:07 PM, Mark Millard wrote:
>
> On 2019-Dec-29, at 17:38, Cameron Berkenpas <cam@neo-zeon.de> wrote:
>
>> I'm building on the system I wish to update. The system itself is 13.0-CURRENT (r356092) and based on gcc 4.2.1. I was going to initially try a live update, but I wasn't sure how successful that would be (but this is a VM so I'd be able to rollback without difficulty). If that didn't work out, I was going to try and create some bootable media and install a new instance from that.
>>
>> I have currently allocated 32GB of memory and there appears to be about 3G of swap and 32 threads.
>>
>> The physical host is a Talos II (so POWER9) running Linux/KVM/libvirt.
>>
>> Thanks,
> One thing that I've noticed is that while
> devel/llvm90 has an option to enable ELFv2
> as the default abi for powerpc64,
> devel/llvm80 does not have such --and may
> well not have all the updates required in
> order to work well for generating ELFv2
> materials for all I know.
>
> Some ports are tied to llvm80 (not tracking
> the default if set later). Thus, if such a
> port is important to one's context, moving
> to an ELFv2 context could be a problem for
> now.
>
> (I'm still dealing with building various
> ways. I've not yet tried installation or
> operation of an ELFv2 context, or an official
> system-clang based context for 32-bit
> powerpc.)
>
>
> Older material (because of some earlier
> top-posting):
>
>> On 12/28/19 6:39 PM, Mark Millard wrote:
>>> On 2019-Dec-28, at 15:28, Cameron Berkenpas <cam at neo-zeon.de> wrote:
>>>
>>>> Hello,
>>>>
>>>> How can one build FreeBSD 13.0-CURRENT for ELFv2 support?
>>>>
>>>> I've installed xtoolchain-llvm90, and I run:
>>>> CROSS_TOOLCHAIN=llvm90 make buildenv
>>>>
>>>>  From here buildworld fails pretty early on with:
>>>> /usr/src/sys/contrib/libnv/nvpair.c:33:10: fatal error: 'sys/cdefs.h' file not found
>>>>
>>>> I can add "-I/usr/include" and so on to /etc/src.conf to hack around this, it just goes a bit further and finds other headers missing.
>>>>
>>>> As far as I can tell, $SYSROOT (/usr/obj/usr/src/powerpc.powerpc64/tmp) isn't being properly setup properly which is resulting in missing headers.
>>>>
>>>> I've done some searching and haven't really found anything too helpful. But perhaps I just don't know what to look for.
>>>>
>>>> Thanks!
>>>>
>>> You may want to specify what type of context(s) you
>>> can try to bootstrap into ELFv2 from. For example:
>>> cross-build? self-hosted only? system version starting
>>> from on the machine doing the build? gcc 4.2.1 based
>>> starting point? single boot media vs. able to have
>>> an old context produce separate/new boot media?
>>> the amount of RAM and swap/page space? (You may be
>>> able to come up with more things to identify that
>>> might contribute to how to progress.)
>>>
>>> I'm working towards updating, but I'll likely be
>>> cross building and producing new media from a
>>> bootable backup of the old media. (Helps avoid
>>> potential live-update issues.) So what I end
>>> up doing may well not match what you would do.
>>
>
> ===
> Mark Millard
> marklmi at yahoo.com
> ( dsl-only.net went
> away in early 2018-Mar)
>
>




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bc598fe4-c296-8c1c-f8c1-098ed4877dfa>