Arch Linux: File /usr/lib/libQt5Positioning.so.5.12.0 is empty, not checked

Автор: | 12/14/2018
 

Уже не первый раз ноут вырубается от перегрева (см. Linux: /lib/modules/4.16.13-1-ARCH/modules.devname not found и error: file ‘/grub/i386-pc/normal.mod’ not found и Linux: /usr/bin/ps: empty и ldconfig: File /usr/lib/libprocps.so.7 is empty, not checked.), теперь вылезла аналогичная проблема, но с библиотеками Qt.

В /var/log/pacman.log куча ошибок типа:

[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libQt5Positioning.so.5.12.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5TextWidgets.so.5.53.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5ConfigWidgets.so.5.53.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libgdk-3.so.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libQt5Sensors.so.5.12.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5ConfigWidgets.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5KIOGui.so.5.53.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5Completion.so is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libQt5Multimedia.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5GlobalAccelPrivate.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libQt5Location.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5ItemViews.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5Crash.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5GuiAddons.so.5 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libQt5Multimedia.so.5.12 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5DBusAddons.so.5.53.0 is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5WindowSystem.so is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libKF5Crash.so is empty, not checked.
[2018-12-13 21:55] [ALPM-SCRIPTLET] ldconfig: File /usr/lib/libQt5Script.so.5.12 is empty, not checked.

Устанавливаем pkgfile:

pacman -S pkgfile

Обновляем его базу пакетов:

pkgfile -u
:: Updating 5 repos...
download complete: multilib             [   281.2 KiB   609K/s  4 remaining]
download complete: archlinuxfr          [   347.4 KiB   673K/s  3 remaining]
download complete: core                 [   772.0 KiB   737K/s  2 remaining]
download complete: community            [    18.2 MiB  3.66M/s  1 remaining]
download complete: extra                [     7.8 MiB  1103K/s  0 remaining]
:: download complete in 7.27s             <    27.4 MiB  3.77M/s  5 files    >
:: waiting for 1 process to finish repacking repos...

Ищем первый файл из списка повреждённых:

pkgfile -s /usr/lib/libQt5Positioning.so.5.12.0
extra/qt5-location

pacman вроде тоже так умеет — но не нашёл:

pacman -Qo /usr/lib/libQt5Positioning.so.5.12.0
error: No package owns /usr/lib/libQt5Positioning.so.5.12.0

Хорошо — pkgfile пакет нашёл, пробуем переустановить qt5-location:

pacman -S qt5-location
resolving dependencies...
looking for conflicting packages...
Packages (1) qt5-location-5.12.0-1
Total Installed Size:  11.16 MiB
:: Proceed with installation? [Y/n]
(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%
error: failed to commit transaction (conflicting files)
qt5-location: /usr/include/qt/QtLocation/5.12.0/QtLocation/private/error_messages_p.h exists in filesystem
qt5-location: /usr/include/qt/QtLocation/5.12.0/QtLocation/private/locationvaluetypehelper_p.h exists in filesystem
qt5-location: /usr/include/qt/QtLocation/5.12.0/QtLocation/private/qabstractgeotilecache_p.h exists in filesystem
...

Добавляем --force:

pacman -S --force qt5-location
warning: option --force is deprecated; use --overwrite instead
resolving dependencies...
looking for conflicting packages...
Packages (1) qt5-location-5.12.0-1
Total Installed Size:  11.16 MiB
:: Proceed with installation? [Y/n]
(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%
:: Processing package changes...
(1/1) installing qt5-location
ldconfig: File /usr/lib/libKF5TextWidgets.so.5.53.0 is empty, not checked.
ldconfig: File /usr/lib/libKF5ConfigWidgets.so.5.53.0 is empty, not checked.
ldconfig: File /usr/lib/libgdk-3.so.0 is empty, not checked.
...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

Отлично, повторяем для следующего файла в списке — File /usr/lib/libKF5TextWidgets.so.5.53.0 is empty, not checked:

pkgfile -s /usr/lib/libKF5TextWidgets.so.5.53.0
extra/ktextwidgets

Переустанавливаем:

pacman -S --force ktextwidgets
warning: option --force is deprecated; use --overwrite instead
warning: ktextwidgets-5.53.0-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (1) ktextwidgets-5.53.0-1
Total Installed Size:  1.83 MiB
:: Proceed with installation? [Y/n]
(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%
:: Processing package changes...
(1/1) reinstalling ktextwidgets                                                                                                                [###] 100%
ldconfig: File /usr/lib/libKF5ConfigWidgets.so.5.53.0 is empty, not checked.
..

И так далее.

Готово.