Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Feb 2023 00:23:53 -0800
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        Dimitry Andric <dim@freebsd.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: core dump in ld during buildworld
Message-ID:  <Y/MuGb/utfdBfJyJ@troutmask.apl.washington.edu>
In-Reply-To: <148DE8E6-E1F2-4132-992A-1A2B9D438B63@FreeBSD.org>
References:  <Y/FuYLIbwo0xBPVK@troutmask.apl.washington.edu> <25B4B3AD-3791-44D0-9FFA-7F1C2A9E82B9@FreeBSD.org> <Y/F0CXM5Lo8WKYQs@troutmask.apl.washington.edu> <Y/Gwbr63I8e5oWDx@troutmask.apl.washington.edu> <148DE8E6-E1F2-4132-992A-1A2B9D438B63@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Feb 19, 2023 at 07:21:54PM +0100, Dimitry Andric wrote:
> On 19 Feb 2023, at 06:15, Steve Kargl <sgk@troutmask.apl.washington.edu> wrote:
> > 
> > On Sat, Feb 18, 2023 at 04:57:45PM -0800, Steve Kargl wrote:
> >>> 
> >>> At that point it is still using the system compiler and linker, and it
> >>> seems that the latter is lld. Do you know which version it is?
> >>> 
> >> 
> >> Good question.  Unfortunate ident(1) is useless in a git world.
> >> 
> >> % ll /usr/bin/ld.lld
> >> -r-xr-xr-x  1 root  wheel  - 41754432 Jan 15 12:03 /usr/bin/ld.lld
> >> 
> >> This was built from source from Jan 15 2023.
> >> 
> >> % /usr/bin/ld.lld --version
> >> LLD 14.0.5 (FreeBSD llvmorg-14.0.5-0-gc12386ae247c-1400004) (compatible with GNU linkers)
> >> 
> > 
> > So, is there some way to rebild only ld.lld and install a new loader?
> > 
> > % cd /usr/src/usr.bin/clang/lld
> > % make depend
> > llvm-tblgen -gen-opt-parser-defs -I /usr/src/contrib/llvm-project/llvm/include -d Options.inc.d  -o Options.inc /usr/src/contrib/llvm-project/lld/ELF/Options.td
> > make: exec(llvm-tblgen) failed (No such file or directory)
> > *** Error code 1
> > 
> > How to I fix this?
> 
> Assuming llvm-tblgen has already been built (it's a bootstrap-tool),
> and you have a regular setup, it should be in:
> 
> /usr/obj/usr/src/amd64.amd64/tmp/obj-tools/usr.bin/clang/llvm-tblgen/llvm-tblgen
> 
> You could try setting LLVM_TBLGEN to that path, then first build libllvm
> just to be sure, then usr.bin/clang/lld:
> 
> export LLVM_TBLGEN=/usr/obj/usr/src/amd64.amd64/tmp/obj-tools/usr.bin/clang/llvm-tblgen/llvm-tblgen
> make -C /usr/src/lib/clang/libllvm
> make -C /usr/src/usr.bin/clang/lld
> 
> If that works, you can run make install from usr.bin/clang/lld.
> 

Thanks for the hints.  The above got me past the segfault 
in ld.ldd.  I now have an error about libdwarf.a being 
truncated and extended beyond some limit while building
nm.  I'm simply do 'make -k buildworld' now to see if 
anything is running south.


-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Y/MuGb/utfdBfJyJ>