Thanks for the explanation. This was a good lesson for me to setup an alternate 
boot environment with beadm.

I checked and the system with the problem is the build machine which has the 
same src.conf for building and installing. So it must be related to the aborted 
install where /usr/lib was updated and /usr/bin was not.

Although I use the same source for all systems, I did a better job than I 
initially mentioned. All systems have the same src.conf when building nd 
installing.

Peter



> On 24 Nov 2025, at 09:59, Dimitry Andric <[email protected]> wrote:
> 
> On 24 Nov 2025, at 09:43, Peter Blok <[email protected]> wrote:
>> 
>> I have multiple systems which I update from the same 14-stable source with 
>> latest commit 465c30c4f202b02cd9cb12f12d9ea856c84c5203 of November 23.
>> 
>> I updated one system with installkernel installworld over NFS without 
>> problems. Next I did the build system that was having the src and obj, but 
>> it stopped with the installworld. Retrying the installworld resulted with 
>> the ld-elf.so.1: /usr/bin/cc: Undefined symbol 
>> “LLVMInitializeAArch64TargetInfo” message.
>> 
>> All systems are Intel or Amd, so I’m puzzled why the above symbol is needed. 
>> The only thing I can think of is that the build system builds all target 
>> compilers. The sucessfully installed system has a different src.conf without 
>> that option.
>> 
>> What is wrong here? The update sequence I use is always the same.
> 
> I think this is because your systems have been built with different src.conf 
> configurations. These days /usr/bin/cc links to 
> /usr/lib/libprivatellvm.so.19, so if you are installing world from a machine 
> where src.conf options were different (in particular the 
> WITHOUT_LLVM_TARGET_xxx options), there can be a mismatch between the symbols 
> expected by the cc binary and the libprivatellvm.so.19 library.
> 
> During installworld there is a moment where the libprivatellvm.so.19 library 
> is installed, and where /usr/bin/cc is not yet updated. Due to our build 
> system running recursive make, and some of those Makefiles invoking 
> /usr/bin/cc, you can run into this issue.
> 
> -Dimitry
> 


Reply via email to