synth install ... builds but does not always install named packages

Adam Weinberger adamw at adamw.org
Fri Sep 15 15:47:43 UTC 2017


> On 15 Sep, 2017, at 2:23, Thomas Mueller <mueller6722 at twc.com> wrote:
> 
>> On Sep 15 07:34, Thomas Mueller wrote:
> 
>> I am building up a system (FreeBSD 11.1-STABLE amd64) using synth, but even when the packages build and appear in /var/synth/live_packages/All , some of the packages don't install.
> 
>> When I type "which gnumeric", "which bison", "which abiword", I just get a blank, and the executable files don't appear in /usr/local/bin .
> 
>> This happened with math/gnumeric, editors/abiword-docs, among others.
> 
>> I subsequently installed those packages by typing "synth install math/gnumeric" and "synth install editors/abiword-docs", but how do I find all the others that built and are listed in /var/synth/live_packages/All but did not install?
> 
>> I see 
> 
>> "ls -l /var/synth/live_packages/All" has 657 lines, while
> 
>> "pkg info -a" produces 544 lines.
> 
>> I piped to "more", then hit G to go to the end, then Ctrl-G, which showed the number of lines.
> 
>> This may not tell the whole story, but makes me believe there is a disparity, and ask how to find and install those packages that built but didn't install.
> 
>> Has anybody else been stung by this bug?
> 
> Matt Smith responded:
> 
>> Do you actually want those packages installed? The usual reason is that 
>> they are build dependencies only required for building another package 
>> and therefore they are in the repo but not installed. If they are run 
>> dependencies actually required for another package to run then they 
>> should be installed.
> 
>> Freshports is a good site for looking at this.  
>> http://www.freshports.org/
> 
>> If you search for something it tells you what is build and what is run.  
>> Alternatively you can look at the ports Makefile for lines such as 
>> BUILD_DEPENDS, RUN_DEPENDS, LIB_DEPENDS etc.
> 
> In some cases, the named packages failed to install the first time (math/gnumeric and editors/abiword), and in other cases desired dependencies didn't install (devel/nasm and sysutils/coreutils, for instance).
> 
> I need some of those build dependencies for other things like, for instance, cross-compiling Haiku and cross-compiling Linux toolchains, or other FreeBSD ports.
> 
> Is there anything I can specify to install those build dependencies, and how do I go through /var/synth/live-packages/All and pkg info -a to install those packages that failed to install without missing something?
> 
> Synth runs faster and more gracefully than portmaster, but portmaster installed everything that it built.

Yes. That's the point. Build-only dependencies don't get installed via synth or poudriere. Portmaster doesn't do clean builds, so it pollutes your system by installing everything. 

You can install everything, though for the life of me I can't imagine why you'd want to, by:

	pkg install -g '*'

# Adam


-- 
Adam Weinberger
adamw at adamw.org
https://www.adamw.org



More information about the freebsd-ports mailing list