On 2021-Dec-30, at 14:04, John Baldwin <j...@freebsd.org> wrote:

> On 12/30/21 1:09 PM, Mark Millard wrote:
>> On 2021-Dec-30, at 13:05, Mark Millard <mark...@yahoo.com> wrote:
>>> This asks a question in a different direction that my prior
>>> reports about my builds vs. Cy's reported build.
>>> 
>>> Background:
>>> 
>>> /usr/obj/BUILDs/main-amd64-nodbg-clang/usr/main-src/amd64.amd64/tmp/usr/lib/libc++.so:GROUP
>>>  ( /lib/libc++.so.1 /usr/lib/libcxxrt.so
>>> and:
>>> lrwxr-xr-x  1 root  wheel        23 Dec 29 13:17:01 2021 
>>> /usr/lib/libcxxrt.so -> ../../lib/libcxxrt.so.1
>>> 
>>> Why did libc++.so.1 not get a:
>>> 
>>> /usr/lib/libc++.so.1 -> ../../lib/libc++.so.1
>> I forgot to remove the .1 on the left hand side:
>> /usr/lib/libc++.so -> ../../lib/libc++.so.1
> 
> Because for libc++.so we don't just symlink to the current version of the 
> library
> (as we do for most other shared libraries) to tell the compiler what to link 
> against
> for -lc++, instead we use a linker script that tells the compiler to link 
> against
> both of those libraries when -lc++ is encountered.

A better identification of what looks odd to me is the
path variations in:

# more /usr/lib/libc++.so
/* $FreeBSD$ */
GROUP ( /lib/libc++.so.1 /usr/lib/libcxxrt.so )

So /usr/lib/ still has to be available (so, possibly, mounted)
for C++ because of the /usr/lib/libcxxrt.so reference? If so,
why the move of libc++.so.1 to /lib/ ?

> I have finally reproduced Cy's build error locally and am testing my fix.  If 
> it
> works I'll commit it.
> 


===
Mark Millard
marklmi at yahoo.com


Reply via email to