Теперь пакет perl использует в путях номер версии для скомпилированных модулей. Это означает, что модули, собранные для не соответствующей версии perl не будут больше загружаться и должны быть пересобраны.
pacman предупреждает об устаревших модулях, которые располагаются в неположенных папках примерно следующими сообщениями:
(1/4) Warn about old perl modules WARNING: '/usr/lib/perl5/core_perl' contains data from at least 1 packages which will NOT be used by the installed perl interpreter. -> Run the following command to get a list of affected packages: pacman -Qqo '/usr/lib/perl5/core_perl' WARNING: 1 file(s) in /usr/lib/perl5/core_perl are not tracked by pacman and need to be rebuilt. -> These were most likely installed directly by cpan or a similar tool. Run the following command to get a list of these files: LC_ALL=C find "/usr/lib/perl5/core_perl" -type f -exec pacman -Qqo {} + |& sed -n 's/^error: No package owns \(.*\)$/\1/p' WARNING: '/usr/lib/perl5/site_perl' contains data from at least 1 packages which will NOT be used by the installed perl interpreter. -> Run the following command to get a list of affected packages: pacman -Qqo '/usr/lib/perl5/site_perl' WARNING: 51 file(s) in /usr/lib/perl5/site_perl are not tracked by pacman and need to be rebuilt. -> These were most likely installed directly by cpan or a similar tool. Run the following command to get a list of these files: LC_ALL=C find "/usr/lib/perl5/site_perl" -type f -exec pacman -Qqo {} + |& sed -n 's/^error: No package owns \(.*\)$/\1/p' WARNING: '/usr/lib/perl5/vendor_perl' contains data from at least 7 packages which will NOT be used by the installed perl interpreter. -> Run the following command to get a list of affected packages: pacman -Qqo '/usr/lib/perl5/vendor_perl'
Если резюмировать все эти сообщения, то они означают, что в папках /usr/lib/perl5/site_perl/, /usr/lib/perl5/vendor_perl/ и /usr/lib/perl5/core_perl/ расположены модули, которые не могут быть использованы и никогда не будут автоматически обновлены. На данный момент, модули размещаются в папке /usr/lib/perl5/5.26/.
Перед тем, как вы можете их использовать, вы должны пересобрать все затронутые пакеты под новый пакет perl. Это изменение также затрагивает модули, установленные непосредственно через CPAN. Пересборка также понадобиться с последующими мажорными обновлениями perl, такими как 5.28 и 5.30.
Обратите внимание на то, что пересборка уже до этого была необходима для основных обновлений, однако теперь perl больше не будет пытаться загружать модули из устаревшего расположения.
Чтобы избавиться от этих предупреждений об устаревших модулях и осиротевших файлах, вы можете удалить директории с устаревшими файлами:
sudo rm -rf /usr/lib/perl5/site_perl/ sudo rm -rf /usr/lib/perl5/vendor_perl/ sudo rm -rf /usr/lib/perl5/core_perl/
Предупреждение не исчезнет, пока вы вручную не удалите эти файлы. Пересборка означает, что рабочая версия будет установлена в корректную директорию /usr/lib/perl5/5.26/site_perl/.
Близкие статьи
- Ошибка «-bash: append_path: команда не найдена» (РЕШЕНО) (100%)
- Восстановление из чёрного экрана при неудачной установке проприетарных AMD драйверов в BlackArch / Arch (52.1%)
- Решение проблемы X server не поднимается в VirtualBox VM после обновления ядра до 4.5 (52.1%)
- Решение ошибки reaver: invalid option -- 'K' (52.1%)
- Решение проблемы Arch Linux kernel 4.7 в VirtualBox: reached target graphical interface (52.1%)
- Решение проблемы «ERROR] Could not open mysql.plugin table. Some plugins may be not loaded» при запуске MariaDB в Arch Linux (RANDOM - 52.1%)