Date: Wed, 15 Mar 2023 11:23:45 +0000 From: void <void@f-m.fm> To: freebsd-ports@freebsd.org Subject: Re: dependency loop Message-ID: <ZBGqwTCWogEeiEWo@int21h> In-Reply-To: <20230315033110.AE3651F9@slippy.cwsent.com> References: <ZBEE35spwKeoKOVX@int21h> <20230315033110.AE3651F9@slippy.cwsent.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 14, 2023 at 08:31:10PM -0700, Cy Schubert wrote: > >Tyically dependency loops (circular dependencies) are caused by >selecting port option, i.e. make config, requesting ports depend >on other ports, depending on others, which depend on others, >which depend on the port in question. What I'm trying to ascertain is, is the problem with a single port, all the looping port(s), the pkg solver, the ports infrastructure or pilot error? Similar issues have happened in the past, yet the options have not been modified in that time. The problem rarely happens, but it has happened repeatedly. this is the first time I've really tried to dig down to solve it though. >Reset your options for all ports in the dependency chain using >make rmconfig. I did this, (rm -rf the poudrierejail_options) but that wasn't all what was required; it still errored. I then cleared out all the packages in the jail, an error still happened when building a single port (from the initial error posted) in poudriere testport but this time the error was different: ### [00:01:25] ===> Building package for cairo-1.17.4_2,3 [00:01:25] pkg-static: Unable to access file /wrkdirs/usr/ports/ \ graphics/cairo/work/stage/usr/local/libdata/pkgconfig/cairo-glx.pc: \ No such file or directory [00:01:26] *** Error code 1 ### I then ran poudriere options on php80 and php80-extensions then bulk -f portslist.txt and everything built. In all cases there is a make.conf defined for the jail with ports options. >Dependency loops never occur when using binary packages. >Users are encouraged to use binary packages rather than >building ports themselves. The option to just use binaries from the pkg servers isn't available for my contexts, and I'm sure there are others like me. Then there are some ports for which pre-built packages don't exist. And then some ports have bugs that need patches applied and may take a while before they appear on pkg.f.o. Building with poudriere-devel is the best solution for my contexts, as it both grabs unmodified binaries from the pkg servers and builds what ports need whatever options in a timely manner. It usually works really well. >Being conservative with port options, i.e. staying with the defaults, >will always avoid this problem. This context is for a FAMP stack & phpbb3 & some tools like vim. There's not a lot of options, but I do need to select some. --
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ZBGqwTCWogEeiEWo>