On 03/12/2016 10:09 PM, E. Liddell wrote:
The short version: some auxiliary build commands are trying to touch directories the package manager doesn't want them to touch, resulting in sandbox violation failures of the following format:
===
VERSION 1.0 FORMAT: F - Function called FORMAT: S - Access Status FORMAT: P - Path as passed to function FORMAT: A - Absolute Path (not canonical) FORMAT: R - Canonical Path FORMAT: C - Command Line
F: mkdir S: deny P: /root/.trinity A: /root/.trinity R: /root/.trinity C: /usr/trinity/14/bin/tdeconfig_compiler /var/tmp/portage/trinity-base/libkcal-14.0.0/work/tdepim/libkcal/htmlexportsettings.kcfg /var/tmp/portage/trinity-base/libkcal-14.0.0/work/tdepim/libkcal/htmlexportsettings.kcfgc
===
I've attacked a full build log for libtdepim which ends in a couple of failures of the same type.
The long(er) version: Gentoo is a source distribution, so Gentoo packages are more or less glorified build scripts. The package manager creates a per-package sandbox in /var/tmp/portage/ which is used during build and install to keep failures from spewing files all over the system.
For some reason, both tdeconfig_compiler and maketdewidgets are trying to do a mkdir in (probably) ~/.trinity . They don't, as far as I can tell, put anything in the resulting directories. Regardless, this breaks the sandbox and the build can't complete.
This is in 14.0.0, but if there's been a commit that has changed any of this since then, I can't find it.
It's possible that there's an additional CMake variable I need to set, in which case feel free to hit me over the head with it. Otherwise, I need some way of either redirecting those mkdir commands so that they land inside the sandbox, or keeping them from being issued in the first place.
E. Liddell
Hi E. I have attached a copy of the build log for the whole tdepim on my system (Debian/Stretch). While quite different from Gentoo, I hope this can give you some hints. The part you are probably interested on begins around line 2157. Cheers Michele