Patrick Welche <prlw1%cam.ac.uk@localhost> writes: > I tried > > pkg_chk -b -P ftp://quantz_w/packages/All -u -a > > which essentially failed with > > # /usr/pkg/sbin/pkg_add -K /var/db/pkg ftp://quantz_w/packages/All/tex-metafont-2014.tgz > pkg_add: A different version of mpfr-4.0.0 is already installed: mpfr-3.1.6 > pkg_add: Can't install dependency mpfr>=4.0.0 > pkg_add: Can't install dependency web2c-[0-9]* > pkg_add: 1 package addition failed > > Had I just run pkg_add, I would understand the need to take care of mpfr. > > Should pkg_chk have worked out that mpfr should have been updated first? > (Bug or user error?) pkg_chk -a says to add. It does not say to update everything else. Basically the issue is that there are two approaches to pkgsrc. For both, theere is an assumption that the source tree is consisent (all HEAD from the same time, or all on some branch from the same time). 1) source tree (and binary packages from that source tree) is consistent with installed packages Here, pkg_chk -a would have been ok. But, your source tree is fairly obviously not matching your installed packages. 2) source tree (and associated binary packages) is newer than installed packages Here, you have a consistency issue, and have a few choices: a) remove everything and reinstall b) use pkgin or similar c) use pkg_rolling-replace d) do things by hand and expect trouble and deal So I would say that pkg_chk -a should not be expected to work unless your installed packages are up-to-date with respect to your source tree and referenced binary packages. Probably you should be using pkgin, after making a summary file from your binary packages.
Attachment:
signature.asc
Description: PGP signature