У мене виникла потреба запустити 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*
ніде не існує. Очевидно, що встановлення пакету не створює потрібного файлу.