Re: Building for ELFv2

Mark Millard via freebsd-ppc <[email protected]>
Newsgroups gmane.os.freebsd.devel.ppc
Message-ID <[email protected]>

On 2019-Dec-29, at 17:38, Cameron Berkenpas <[email protected]> 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)

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ppc
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.