Оновлення libpng на Ubuntu


1

У мене виникла потреба запустити libpngутиліту Ubuntu convert, і коли я зробив повідомлення про помилку, що моя версія libpngзастаріла і її потрібно було оновити. Отже, я пішов звичайним маршрутом apt-get install, але з причин, яких зараз уже не пам’ятаю, це не вирішило проблеми. Тут дещо заплуталося.

Я завантажив джерело для libpng, зробив make і встановив make. Поки була створена спільна бібліотека /usr/local/lib, конвертуйте тепер звіти:

convert: error while loading shared libraries: libpng.so.2: cannot open shared object file: No such file or directory

За порадою корисної людини в іншому місці на StackExchange я спробував apt-get installще раз, намагаючись отримати та встановити пакунки libpng12-devта libpng12-0. Однак обидві спроби генерували повідомлення

libpng12-dev is already the newest version
libpng12-0 is already the newest version

... і так нічого не було встановлено. Можливо, мої незграбні спроби зробити джерело накрутили речі. Чи якимось способом я прибираю речі? Наприклад, встановити старішу версію libpng і потім встановити останню версію?

Пізніше:

На думку догберта, я ознайомився зі статтею за адресою https://www.debian-administration.org/article/176/Reinstalling_packages_to_fix_problems і виявив, що можу примусити видалити пакунок, не видуваючи також усіх залежних пакетів:

dpkg --purge --force-depends libpng12-0

Отже, я це зробив, а потім знову встановив libpng12-0. Однак convertвсе-таки повідомляється про ту саму помилку. Гаразд, можливо, мені потрібно перевстановити, convertоскільки, можливо, libpng12-0бібліотека не там, де очікується. convertє частиною imagemagick, тому я його видалив. Однак, convertвін все ще був доступний у командному рядку, тому видалення imagemagickне позбулося його. Повторно встановлено imagemagick. Ті ж результати: convertвсе ще скаржиться, що не може знайти libpng.so.2.

Обшукали весь жорсткий диск і виявили, що жодного файлу libpng.so*ніде не існує. Очевидно, що встановлення пакету не створює потрібного файлу.


Відповіді:


0

libpng.so.2 повинен бути спільною бібліотекою для libpng-1.0.x (поточна версія 1.0.63). У вас є "конвертувати" (частина imagemagick), яка, мабуть, була побудована за допомогою libpng-1.0.x, тому вам потрібно видалити та перевстановити imagemagick через apt-get. Як тільки це працює, ви можете спробувати знову встановити нову версію imagemagick від imagemagick.org, яка повинна працювати нормально з libpng12.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.