steve%prd.co.uk@localhost (Steve Blinkhorn) writes: > This is all using 2021Q4 and a newly-downloaded pkgsrc. > > I know Dependency Hell is the price of saving space with shared > libraries, but am I missing something that ought to be blindingly > obvious to save all the frustration ansd wasted time? 1) If you are using binary packages and sources at the same time, you can only use packages that correspond to the sources you are using. So if the binary package set is from 2021Q4, then you need to check out pkgsrc-2021Q4 from CVS. 2) You need to have the same options in your sources as used by the binary build you are using. For TNF builds, they are defaults, almost 100% true, almost 100% by policy, but probably not quite in strange cases. 3) You either need to do "pkgin fug" to make everything match the binary package set, or you need to do "pkg_rolling-replace -uv" until all succeeds, so that all your installed packages correspond to the sources. 4) Using "pkgin sk" and then keep/unkeep to adjust it is useful. You can then "pkgin ar" to get rid of things you don't need. 5) "DEPENDS_TARGET=bin-install clean" in mk.conf is helpful when you build from source and do (4). 6) The "you need to" above is not really true. But if you depart from that, you will occasionally have trouble and you will have to resolve them, by removing, make replace, etc. Overall I am guessing you are using binary packages from 2021Q4 and pkgsrc HEAD (current). That's not going to work because packages from the two worlds expect different dependencies. Pick a branch or head and stick with it until you jump to the next. Personally, I run 2021Q4 on many machines, and current on a few. I build my own binaries from the latest stable branch on one box and run it on others, for my most production machines. I don't do any updates on production machines until I know everything has built. My advice to you is pick the quarterly stable branch; pkgsrc-current is for people willing to deal with a bit more trouble.
Attachment:
signature.asc
Description: PGP signature