Summary: | latest libzip4 package breaks applications | ||
---|---|---|---|
Product: | [KDE Neon] neon | Reporter: | John Salatas <jsalatas> |
Component: | Packages User Edition | Assignee: | Neon Bugs <neon-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | alexander, jgrusendorf, joenosie, jr, leandrosa.esaf, lithi, neon-bugs, oded, sitter |
Priority: | HI | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Neon | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | libzip4 1:1.0.1-0+16.04+xenial+build5 |
Description
John Salatas
2017-06-14 03:54:49 UTC
Problem happened here too. Thanks, this solved my problem with the workbench. I see this issue as well. This is a problem with libzip4 - as can be guessed from the name, it is supposed to install the 4th major API version of libzip, which it does on Ubuntu xenial (as well as on current Ubuntu: https://packages.ubuntu.com/artful/amd64/libzip4/filelist as version 1.1.2), and MySQL Workbench relies on libzip.so.4 being available. Recently Neon has updated libzip to version 1.2, which apparently has a major upgrade to the API and thus uses major API version 5 (This means its not promised to be compatible with API version 4 - though as shown in comment #1 and comment #2, it looks like its compatible enough to still get MySQL workbench loading), but the package name was not changed. As a result, upgrading libzip4 1.1.2 to libzip4 1.2.0 causes the file libzip.so.4 to be deleted and the file libzip.so.5 to be installed instead. I think the solution would be to build a new package - libzip5 that installs the new version, so that mysql-workbench that depends on libzip4 can still get libzip.so.4 by asking for libzip4 package. I see this issue as well. This is a problem with libzip4 - as can be guessed from the name, it is supposed to install the 4th major API version of libzip, which it does on Ubuntu xenial (as well as on current Ubuntu: https://packages.ubuntu.com/artful/amd64/libzip4/filelist as version 1.1.2), and MySQL Workbench relies on libzip.so.4 being available. Recently Neon has updated libzip to version 1.2, which apparently has a major upgrade to the API and thus uses major API version 5 (This means its not promised to be compatible with API version 4 - though as shown in comment #1 and comment #2, it looks like its compatible enough to still get MySQL workbench loading), but the package name was not changed. As a result, upgrading libzip4 1.1.2 to libzip4 1.2.0 causes the file libzip.so.4 to be deleted and the file libzip.so.5 to be installed instead. I think the solution would be to build a new package - libzip5 that installs the new version, so that mysql-workbench that depends on libzip4 can still get libzip.so.4 by asking for libzip4 package. The correct workaround for now is to "pin" libzip4, for example by running synaptic, then finding and selecting libzip4, then from the menu choose Package -> Force version and select one of the 1.1.2 versions. I have the same problem. $ php -v PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/zip.so' - libzip.so.4: cannot open shared object file: No such file or directory in Unknown on line 0 PHP 7.0.18-0ubuntu0.16.04.1 (cli) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.0.18-0ubuntu0.16.04.1, Copyright (c) 1999-2017, by Zend Technologies $ ldd -v /usr/lib/php/20151012/zip.so linux-vdso.so.1 => (0x00007fff225db000) libzip.so.4 => not found $ locate libzip.so.5 /usr/lib/x86_64-linux-gnu/libzip.so.5 /usr/lib/x86_64-linux-gnu/libzip.so.5.0.0 $ dpkg -S /usr/lib/x86_64-linux-gnu/libzip.so.5 libzip4:amd64: /usr/lib/x86_64-linux-gnu/libzip.so.5 $ apt policy libzip4 libzip4: Installed: 1.2.0-0neon+16.04+xenial+build2 Candidate: 1.2.0-0neon+16.04+xenial+build2 Version table: *** 1.2.0-0neon+16.04+xenial+build2 500 500 http://archive.neon.kde.org/user/lts xenial/main amd64 Packages 100 /var/lib/dpkg/status 1.0.1-0ubuntu1 500 500 http://ca.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages This bug also affects php7.0-zip package: Keep getting this error in my log files everytime PHP Startup is run via cron: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/zip.so' - libzip.so.4: cannot open shared object file: No such file or directory in Unknown on line 0 $ ldd -v /usr/lib/php/20151012/zip.so libzip.so.4 => not found This bug is also affecting the latest Ark (4:17.04.2+p16.04+git20170616.1657-0) package in dev stable. Ark still runs with libzip4 installed, but the package lists libzip5 as a dependency, causing apt to complain. A temporary solution would be sudo apt remove ark # to unblock apt sudo apt install libzip4=1.0.1-0ubuntu1 # to downgrade from ubuntu repositories sudo apt-mark hold libzip4 # to prevent libzip from updating and breaking stuff again sudo apt install ark # to reinstall Ark with libzip5 sudo apt update # to update package index sudo apt full-upgrade # to update all the packages sudo apt autoremove # to perform some cleaning After this bug is resolved, unlock libzip4: sudo apt-mark unhold libzip4 Fixed in libzip4 1:1.0.1-0+16.04+xenial+build5 libzip5 1.2.0-0neon+16.04+xenial+build10 P.S. dont forget to sudo apt-mark unhold libzip4 |