You are not logged in.
Hello all,
I did an upgrade 2 days ago, and after restarting, Xorg does not start and displays the following message repetitively:
/usr/bin/Xorg.bin: error while loading shared libraries: /usr/lib/libpng16.so.16: file too shortThe package libpng was included in the upgraded packages so I guess the problem comes from there.
Thanx in advance for your help !
Last edited by PâtéDeCerf (2014-11-17 09:17:17)
Offline
Most likely the file is corrupted. Reinstall the package.
Offline
hi Scimmia,
when I try to reinstall it, there is an error message:
$ sudo pacman -S libpng
...
error: failed to commit transaction (conflicting files)
lipng: /usr/bin/lipng-config exists in filesystem
... the list has about 20 other files with "libpng: /usr/... exists in filesystem"
It is also impossible to remove the package libpng.
Offline
Definitely corruption.
Offline
thank you.
the wiki mentions 2 methods to deal with that:
manually renaming and later removing all the files that belong to the package in question, or
you may exceptionally run pacman -S --force $package to force pacman to overwrite these files.
Which method do you recommend?
Offline
The --force option would be the "quick & dirty" method. It carries risk of breakage and many on these forums strongly recommend against its use unless one knows what they're doing. Those same people would probably recommend the longer method of renaming/removing as that adds to your cli experience.
Since your install is only two days old you have probably not done a lot of tweaking/enhancements to your install yet so any breakage would essentially put you back two days.
Offline
In cases of single package corruption like this, I generally just use --force.
Offline
I renamed all the files which had 'exists in filesystem' and re-installed the package libpng
The Xorg server now starts, but only programs like gedit or the file manager can start; all the other programs don't start!!
Offline
could be more corruption. See if you can get a terminal emulator running and run the programs from there.
Offline
Scimmia,
when I launch a program from the terminal:
$ chromium
/usr/lib/chromium/chromium: error while loading shared libraries: /usr/lib/libjpeg.so.8: file too shortOffline
so it appears libjpeg is corrupt, too. Fix it the same way.
Offline
I realized that /usr/lib/libjpeg.so.8 is included in a list of files "empty, not checked" when I reinstall libpng:
$ sudo pacman -S libpng
warning: libpng-1.6.14-1 is up to date -- reinstalling
resolving dependencies...
looking for inter-conflicts...
Packages (1): libpng-1.6.14-1
Total Installed Size: 0.59 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring [####################################################] 100%
(1/1) checking package integrity [####################################################] 100%
(1/1) loading package files [####################################################] 100%
(1/1) checking for file conflicts [####################################################] 100%
(1/1) checking available disk space [####################################################] 100%
(1/1) reinstalling libpng [####################################################] 100%
ldconfig: File /usr/lib/libcupscgi.so is empty, not checked.
ldconfig: File /usr/lib/libcupscgi.so.1 is empty, not checked.
ldconfig: File /usr/lib/libpng16A.so.16.14.0 is empty, not checked.
ldconfig: File /usr/lib/libaio.so.1.0.1 is empty, not checked.
ldconfig: File /usr/lib/libmagic.so.1.0.0 is empty, not checked.
ldconfig: File /usr/lib/libgnome-desktop-3.so is empty, not checked.
ldconfig: File /usr/lib/libjpeg.so.8 is empty, not checked.
ldconfig: File /usr/lib/libcupsppdc.so.1 is empty, not checked.
ldconfig: File /usr/lib/libaio.so.1 is empty, not checked.
ldconfig: File /usr/lib/libturbojpeg.so.0 is empty, not checked.
ldconfig: File /usr/lib/libgnome-desktop-3.so.10.0.0 is empty, not checked.
ldconfig: File /usr/lib/libaio.so is empty, not checked.
ldconfig: File /usr/lib/libcupsppdc.so is empty, not checked.
ldconfig: File /usr/lib/libmagic.so.1 is empty, not checked.
ldconfig: File /usr/lib/libcupsmime.so.1 is empty, not checked.
ldconfig: File /usr/lib/libjpeg.so.8.0.2 is empty, not checked.
ldconfig: File /usr/lib/libcupsimage.so.2 is empty, not checked.
ldconfig: File /usr/lib/libmagic.so is empty, not checked.
ldconfig: File /usr/lib/libcups.so.2 is empty, not checked.
ldconfig: File /usr/lib/libturbojpeg.so is empty, not checked.
ldconfig: File /usr/lib/libcupsimage.so is empty, not checked.
ldconfig: File /usr/lib/libcupsmime.so is empty, not checked.
ldconfig: File /usr/lib/libgnome-desktop-3.so.10 is empty, not checked.
ldconfig: File /usr/lib/libcups.so is empty, not checked.
ldconfig: File /usr/lib/libjpeg.so is empty, not checked.
ldconfig: File /usr/lib/libturbojpeg.so.0.0.0 is empty, not checked.what does this mean? are all those files corrupted? this is too messy...
Offline
Since those files are not part of the libpng package, you have a much bigger problem than just that package. It looks like you/someone/something managed to corrupt a bunch of library .so files. That package installer simply calls ldconfig and ldconfig is throwing that error . You will probably have to reinstall each of those file's owning packages.
Offline
All those files did not belong to any package:
$ pacman -Qo /usr/lib/libcupscgi.so /usr/lib/libcupscgi.so.1 /usr/lib/libpng16A.so.16.14.0 /usr/lib/libaio.so.1.0.1 /usr/lib/libmagic.so.1.0.0 /usr/lib/libgnome-desktop-3.so /usr/lib/libjpeg.so.8 /usr/lib/libcupsppdc.so.1 /usr/lib/libaio.so.1 /usr/lib/libturbojpeg.so.0 /usr/lib/libgnome-desktop-3.so.10.0.0 /usr/lib/libaio.so /usr/lib/libcupsppdc.so /usr/lib/libmagic.so.1 /usr/lib/libcupsmime.so.1 /usr/lib/libjpeg.so.8.0.2 /usr/lib/libcupsimage.so.2 /usr/lib/libmagic.so /usr/lib/libcups.so.2 /usr/lib/libturbojpeg.so /usr/lib/libcupsimage.so /usr/lib/libcupsmime.so /usr/lib/libgnome-desktop-3.so.10 /usr/lib/libcups.so /usr/lib/libjpeg.so /usr/lib/libturbojpeg.so.0.0.0
error: No package owns /usr/lib/libcupscgi.so
error: No package owns /usr/lib/libcupscgi.so.1
error: No package owns /usr/lib/libpng16A.so.16.14.0
error: No package owns /usr/lib/libaio.so.1.0.1
error: No package owns /usr/lib/libmagic.so.1.0.0
error: No package owns /usr/lib/libgnome-desktop-3.so
error: No package owns /usr/lib/libjpeg.so.8
error: No package owns /usr/lib/libcupsppdc.so.1
error: No package owns /usr/lib/libaio.so.1
error: No package owns /usr/lib/libturbojpeg.so.0
error: No package owns /usr/lib/libgnome-desktop-3.so.10.0.0
error: No package owns /usr/lib/libaio.so
error: No package owns /usr/lib/libcupsppdc.so
error: No package owns /usr/lib/libmagic.so.1
error: No package owns /usr/lib/libcupsmime.so.1
error: No package owns /usr/lib/libjpeg.so.8.0.2
error: No package owns /usr/lib/libcupsimage.so.2
error: No package owns /usr/lib/libmagic.so
error: No package owns /usr/lib/libcups.so.2
error: No package owns /usr/lib/libturbojpeg.so
error: No package owns /usr/lib/libcupsimage.so
error: No package owns /usr/lib/libcupsmime.so
error: No package owns /usr/lib/libgnome-desktop-3.so.10
error: No package owns /usr/lib/libcups.so
error: No package owns /usr/lib/libjpeg.so
error: No package owns /usr/lib/libturbojpeg.so.0.0.0However, I realized that those files are normally in the packages that were lastly updated on my system, as I looked on pacman.log:
$ less /var/log/pacman.log
...
[2014-11-12 21:55] [PACMAN] starting full system upgrade
[2014-11-12 21:55] [PACMAN] upgraded file (5.20-1 -> 5.20-2)
[2014-11-12 21:55] [PACMAN] upgraded gnome-desktop (1:3.14.1-1 -> 1:3.14.2-1)
[2014-11-12 21:55] [PACMAN] upgraded libaio (0.3.109-7 -> 0.3.110-1)
[2014-11-12 21:55] [PACMAN] upgraded libpng (1.6.13-1 -> 1.6.14-1)
[2014-11-12 21:55] [PACMAN] upgraded libcups (2.0.0-2 -> 2.0.0-3)
[2014-11-12 21:55] [PACMAN] upgraded libjpeg-turbo (1.3.1-1 -> 1.3.1-2)
...I reinstalled those 6 packages with
pacman -S --force $package then rebooted, and now it all seems to work fine :-)
I'm still wondering: how come were all those packages corrupted during an update ??
Offline