tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ./build.sh -O ../obj tools producing error



And now, I'm really screwed.......   I grabbed the latest "base.txz" for aarch64 and successfully located the ./lib/ directory and sure enough, that libc.so did have  __sigaction_siginfo

Great!

so cp -rp that lib directory to /lib2

then:

# cd /
# mv lib lib0      ;;; rename old lib as lib0
# mv lib2 lib      ;;;; rename new libs as /lib
mv: Shared object "libc.so.12" not found

And, in fact, pretty much every command except "pwd" so far needs a shared library it can't find.

Sigh, is there a way to fix this?  Or am I totally hosed?
Naturally, remote access does not work, either.

# shutdown -h now
shutdown: Shared object "libc.so.12" not found

I long for the days when we thought we had enough memory so we could afford to have static binaries lying around.... ;-)



On Thu, Jul 27, 2023 at 2:21 PM Michael Cheponis <michael.cheponis%gmail.com@localhost> wrote:
The <stuff> looked pretty generic, mostly just turning .c into .o files

Yes, I apparently have an old libc (thanks for catching this):

lrwxr-xr-x  1 root  wheel         14 Jul 22  2020 /lib/libc.so@ -> libc.so.12.217
lrwxr-xr-x  1 root  wheel         14 Jul 22  2020 /lib/libc.so.12@ -> libc.so.12.217
-r--r--r--  1 root  wheel  2,256,536 Jul 22  2020 /lib/libc.so.12.217



But I think I'm in a catch-22:  How do I build a new up-to-date libc, if the 'tools' won't build (because they need the new libc)?



On Thu, Jul 27, 2023 at 2:01 PM Valery Ushakov <uwe%stderr.spb.ru@localhost> wrote:
On Thu, Jul 27, 2023 at 10:22:20 -0700, Michael Cheponis wrote:

> $ nm -D /lib/libc.so | grep sigaction
>
>
>  ~/July.2023
> 0000000000099c18 T __libc_sigaction14
> 0000000000099c18 W __sigaction14
> 0000000000099dd4 T __sigaction_sigtramp
> 0000000000084dbc T sigaction
[...]
> It is *missing* __sigaction_siginfo          (!)
>
> I have no idea what gives (how that happened), nor how to fix it.

An old libc?  You seems to have new includes that rename sigaction,
but an old libc that doesn't have the target symbol.

lib/libc/sys/Makefile.inc:

date: 2021-11-01 08:53:45 +0300;  author: thorpej;  state: Exp;  lines: +3 -3;  commitid: yBY9X0v5b6DYo3fD;
Version the sigaction(2) libc wrapper.  The new version uses the "siginfo"
trampoline exclusively, thus relegating "sigcontext"-style handlers (which
have not been documented for many years now) to the dustbin of the compat
library.


-uwe


Home | Main Index | Thread Index | Old Index