[arch-general] Why couldn't pacman resolve the dependency?
Hi, the problem could be solved by installing the problematic dependency first, but why couldn't pacman -Syu not resolve the dependency? This is what happened: $ pacman -Si perl-cpanplus perl-package-constants Repository : community Name : perl-cpanplus Version : 0.9152-2 Depends On : perl perl-log-message perl-archive-extract perl-term-ui perl-log-message-simple perl-module-pluggable perl-object-accessor perl-package-constants Optional Deps : None Conflicts With : None Replaces : None Repository : community Name : perl-package-constants Version : 0.06-1 Depends On : perl Optional Deps : None Conflicts With : None Replaces : None $ date;sudo pacman -Syu Sun Jun 28 17:44:01 CEST 2015 :: Synchronizing package databases... core is up to date extra is up to date community is up to date multilib is up to date archaudio-production is up to date :: Starting full system upgrade... warning: ardour: ignoring package upgrade (4.0-2 => 4.1-1) warning: audacity: local (2.1.0-2) is newer than extra (2.1.0-1) warning: clthreads: local (2.4.0-5) is newer than community (2.4.0-1) warning: gvfs: local (2013.08.18-1) is newer than extra (1.24.1-2) warning: hunspell-en: ignoring package upgrade (7.1-3 => 2015.05.18-4) warning: libfishsound: local (1.0.0-2) is newer than community (1.0.0-1) warning: linux-rt: ignoring package upgrade (4.0.4_rt1-1 => 4.0.5_rt4-1) warning: linux-rt-docs: ignoring package upgrade (4.0.4_rt1-1 => 4.0.5_rt4-1) warning: linux-rt-headers: ignoring package upgrade (4.0.4_rt1-1 => 4.0.5_rt4-1) warning: linux-rt-lts: ignoring package upgrade (3.10.61_rt65-1 => 3.18.16_rt13-1) warning: linux-rt-lts-docs: ignoring package upgrade (3.10.61_rt65-1 => 3.18.16_rt13-1) warning: linux-rt-lts-headers: ignoring package upgrade (3.10.61_rt65-1 => 3.18.16_rt13-1) warning: ignoring package replacement (mate-calc-1.8.0-2 => galculator-gtk2-2.1.3-3) warning: meterbridge: local (0.9.2-5) is newer than community (0.9.2-1) warning: pulseaudio: local (2013.08.18-1) is newer than extra (6.0-2) warning: sylpheed: local (3.4.2-20141124) is newer than community (3.4.2-1) warning: virtualbox: ignoring package upgrade (4.3.12-1 => 4.3.28-1) warning: virtualbox-guest-iso: ignoring package upgrade (4.3.12-1 => 4.3.28-1) warning: virtualbox-host-dkms: ignoring package upgrade (4.3.12-1 => 4.3.28-1) warning: zita-alsa-pcmi: ignoring package upgrade (0.2.0-1 => 0.2.0-2) warning: zita-resampler: ignoring package upgrade (1.3.0-2 => 1.3.0-3) resolving dependencies... looking for conflicting packages... error: failed to prepare transaction (could not satisfy dependencies) :: perl-cpanplus: requires perl-package-constants $ sudo pacman -S perl-package-constants resolving dependencies... looking for conflicting packages... Packages (1) perl-package-constants-0.06-1 Total Download Size: 0.00 MiB Total Installed Size: 0.00 MiB :: Proceed with installation? [Y/n] :: Retrieving packages ... perl-package-constants-0.06-1-any 4.7 KiB 1581K/s 00:00 [--------------------------------------] 100% (1/1) checking keys in keyring [--------------------------------------] 100% (1/1) checking package integrity [--------------------------------------] 100% (1/1) loading package files [--------------------------------------] 100% (1/1) checking for file conflicts [--------------------------------------] 100% (1/1) checking available disk space [--------------------------------------] 100% (1/1) installing perl-package-constants [--------------------------------------] 100% $ date;sudo pacman -Syu Sun Jun 28 17:47:47 CEST 2015 :: Synchronizing package databases... core is up to date extra is up to date community is up to date multilib is up to date archaudio-production is up to date :: Starting full system upgrade... [...] Packages (60) [...] Total Download Size: 47.35 MiB Total Installed Size: 251.29 MiB Net Upgrade Size: -1.47 MiB :: Proceed with installation? [Y/n] Regards, Ralf
On Sun, Jun 28, 2015 at 5:52 PM, Ralf Mardorf <ralf.mardorf@rocketmail.com> wrote:
Hi,
the problem could be solved by installing the problematic dependency first, but why couldn't pacman -Syu not resolve the dependency?
This is what happened:
[long snip]
I think that what happened is that pacman only installs new packages to solve *new* dependencies. That is, if the unsatisfied dependency is an existing one, made for example by removing a package with -Rd, then it will complain about the broken dependency but it will not install the package automatically. However, if the dependency arises because a new version of a package requires it (not requiring it before), then it will fix the dependency by adding that package. Just guessing, but I think that is the case. You can easily check if I'm right with: # pacman -Rd perl-package-constants # pacman -Su -- Rodrigo
participants (2)
-
Ralf Mardorf
-
Rodrigo Rivas