После обновления с помощью pacman -Syuq
:
# pacman -Sc
pacman: ошибка при загрузке общих библиотек: libicuuc.so.59: не удается открыть общий объектный файл: нет такого файла или каталога
# find / -name libicuuc.so.* 2>/dev/null
/usr/lib/libicuuc.so.60.1
/usr/lib/libicuuc.so.60
Arch Linux в версии Pi 1:
# uname -an
4.9.62-1-ARCH #1 SMP Fri Nov 17 13:42:55 UTC 2017 armv6l GNU/Linux
Ответы:
Предложенные ранее решения не были актуальны или не работали для меня. По какой-то причине обновление
icu
пакета с 59.1-2 до 60.1-1 привело к разрыву связи, и многие программы (включая pacman) потерпели неудачу с этой ошибкой после. Никакой прерванный пакман на моей стороне.Если у вас все еще есть предыдущий пакет в вашем кэше, вы можете попробовать это, который работал для меня:
/var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz
).mkdir -p ~/pkg/tmp && tar xJvf /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz -C ~/pkg/tmp
sudo cp ~/pkg/tmp/usr/lib/libicu*.59 /usr/lib/
sudo pacman -Syyu
источник
rm /usr/lib/libicu*.59
?Вы также можете использовать переменную LD_LIBRARY_PATH для загрузки библиотек icu из другого места. Таким образом, вы можете избежать любых копий в / usr / lib:
источник
LD_LIBRARY_PATH=`pwd`/pkg/tmp/usr/lib
в моем случае.Я исследовал проблему и нашел о
/var/log/pacman.log
. Я прочитал журнал и обнаружил, что проблема была:Обновление было прервано, поэтому возникла проблема с подключением.
Я тогда скачал прошивку отсюда . Я извлек недостающую библиотеку:
libicuuc.so.59
была символическая ссылка наlibicuuc.so.59.1
, поэтому я перешелlibicuuc.so.59.1
на/usr/lib/libicuuc.so.59
.Запуск
pacman
я получил ошибку, котораяlibicudata.so.59
отсутствовала. Я извлек недостающую библиотеку/usr/lib
иpacman
работал :).Затем я обновил систему
pacman -Syuq
и проверилldd /usr/bin/pacman
наличие всех библиотек. Я переместил библиотеки v59/usr/lib
и проверил, чтоpacman
это работает.Перезагрузка со скрещенными пальцами ... успешно !!!
pacman -Sc
и ложиться спать с улыбкой :)источник
Если у вас есть исполняемый файл, которому нужна конкретная версия библиотеки (как это было в моем случае), для этой конкретной версии есть пакет aur .
источник
Решил проблему с pacman -Sc с последующим pacman -Syyu Не уверен, почему это решило проблему.
источник
В вашей системе не установлена lib32-icu. Просто установите lib32-icu из pacman, и все проблемы будут решены.
источник
Я решил эту проблему с помощью следующей ссылки; Вот
Согласно этой статье, понижение версии является плохой идеей, и вам, вероятно, следует пересобрать пакет, в котором используется вышеуказанная недостающая зависимость. Понижение может повлиять на несколько пакетов.
источник