Error when updating

I am getting this error when trying to update with Yay:

libatspi.so.0.0.1 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libclang.so.13.0.0.old est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncursesw.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libXi.so.6.1.0 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libLTO.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncursesw.so.6.3 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libLLVM-13.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncurses++w.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libatspi.so.0 est vide, n'a pas été vérifié.
ldconfig: /usr/lib32/libudev.so.1.7.2.old n'est pas un fichier de type ELF - il a un octet magique au début incorrect.

ldconfig: Fichier /usr/lib32/libssh2.so.1.0.1 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libssh2.so.1 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libtic.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libform.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libpanelw.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libmenuw.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libclang-cpp.so.13.old est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libmenuw.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libXi.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libpanelw.so.6.3 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libssh2.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libtic.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libcurses.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libformw.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libLTO.so.13 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libLLVM.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncurses.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libformw.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libLLVM-13.0.0.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libtinfo.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libtinfo.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncurses++.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libmenu.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libpanel.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libmenuw.so.6.3 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libatspi.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncurses++w.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libRemarks.so.13 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncurses++w.so.6.3 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libXi.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libncursesw.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libpanelw.so.6 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libformw.so.6.3 est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libcursesw.so est vide, n'a pas été vérifié.
ldconfig: Fichier /usr/lib32/libRemarks.so est vide, n'a pas été vérifié.
ldconfig: /usr/lib32/libnss_mymachines.so.2 n'est pas un lien symbolique

ldconfig: /usr/lib32/libnss_myhostname.so.2 n'est pas un lien symbolique

ldconfig: /usr/lib32/libnss_resolve.so.2 n'est pas un lien symbolique

ldconfig: /usr/lib32/libnss_systemd.so.2

When I check i find dozens of files in /usr/lib32 whose size are zero.
Any idea?

Either add a “language” tag on the topic as the output isn’t in english or just prepend LC_ALL=C to posted commands so that the output will be in English.

Run pacman -Qo /path/to/file on those files and reinstall whatever package they belong to. For example libclang.so.13.0.0 tells me that it belongs to clang:

pacman -Qo /usr/lib/libclang.so.13.0.0                                                
/usr/lib/libclang.so.13.0.0 is owned by clang 13.0.0-4 #output

Do the same for each corrupted file and install the packages. Do it with the command:

sudo pacman -S --force clang #or whatever package it belongs to

Then try to update your system:

sudo pacman-mirrors -f5 && sudo pacman -Syyu   
1 Like

Thanks for your answer.

I did as you say for each file (quite long thing to do) and the output is error: No package owns *file* .

Does that mean i can delete these files manually?

Yes. In this case you can safely remove those library. Just double-check what you are removing.

Is the output different now when you run yay?

I checked and deleted the files and the output of yay is cleaner, thanks.

Missing AUR Packages:  linux-latest  linux-latest-bbswitch  linux-latest-headers  linux-latest-r8168  linux511-rt  linux511-rt-bbswitch  linux511-rt-headers  manjaro-iso-profiles-community  manjaro-iso-profiles-official  manjaro-tools-base  manjaro-tools-iso  manjaro-tools-pkg  manjaro-tools-yaml  pcmciautils  sonar-iso-profiles  vertex-theme  xf86-input-keyboard  xf86-input-mouse
 -> Orphaned AUR Packages:  jack_autoconnect-git  lib32-qjson  pkgfile-git  portforwarder-rs  simplesysexxer  vuze
 -> Flagged Out Of Date AUR Packages:  lib32-qjson  ncurses5-compat-libs  optimus-manager  python-stringcase

When I list the orphans though i have a different list:

sudo pacman -Qtdq
celt
fakechroot
gtest
meson

Pacman cannot handle AUR orphans?
How to clean AUR properly?

sudo pacman -Rns $(pacman -Qtdq) #remove unused packages (orphans)

Pacman can handle AUR orphans or atleast most of them which were installed along with the AUR packages during installation. For example go which is a make dependency of yay can be removed by pacman if yay is uninstalled.

This has to be done manually because AUR packages are installed manually. Use pacman -Qm to list all AUR packages and remove them with yay -Rns <package_name> if not needed.

Strange that just right now some new files belonging to no packages were found.

/usr/lib32/libnss_mymachines.so.2  
/usr/lib32/libnss_myhostname.so.2
/usr/lib32/libnss_resolve.so.2 
/usr/lib32/libnss_systemd.so.2

I also tried to install a package 2 days ago called spleeter and it came with huge dependencies. The install failed because AUR could not find one of them ( tensorflow114) and the dependencies remained and take huge disk space.

LC_ALL=C yay -P --stats
==> Yay version v11.1.0
===========================================
==> Total installed packages: 1806
==> Total foreign installed packages: 87
==> Explicitly installed packages: 480
==> Total Size occupied by packages: 26.6 GiB
===========================================
==> Ten biggest packages:
cuda: 3.6 GiB
cudnn: 2.6 GiB
tensorflow-cuda: 1.6 GiB
python-tensorflow-cuda: 956.0 MiB
intel-mkl: 820.5 MiB
linux-firmware: 753.7 MiB
nccl: 656.5 MiB
wine: 488.2 MiB
pinegrow: 446.1 MiB
nvidia-utils: 438.5 MiB

How to clean after this failed install without deleting wrong stuff?

I’d do it with pamac:

pamac remove $(pamac list --orphans --quiet)

Or maybe that’s just me, but that what I’d have done.

:man_shrugging:

1 Like

On my system all of them belong to lib32-systemd.

How to know if a package is really needed?

If I delete them and reinstall lib32-systemd these libraries come back as non existing/non part of a package.

You installed all those AUR packages so only can decide :man_shrugging:

:+1:

In the case i mentioned above many dependencies come with a package. How to know which one to delete afterwards without breaking the system?

Is it normal?

Sorry but i am gonna need more explanations.
I installed a 64bits Manjaro and the only thing i can think of regarding 32bits use is Wine.