installworld broken - osreldate.h: permission denied
Ian Lepore
ian at FreeBSD.org
Sat Sep 28 17:19:55 UTC 2013
On Sat, 2013-09-28 at 15:09 +0200, Joel Dahl wrote:
> Hi,
>
> Fresh HEAD. installworld from read-only /usr/obj and /usr/src:
>
> /usr/src/include/iconv.h osreldate.h /usr/include
> install: osreldate.h: Permission denied
> *** Error code 71
>
> Stop.
> make[4]: stopped in /usr/src/include
> *** Error code 1
>
> Everything was working fine 2 weeks ago, so it's a recent breakage.
>
Okay, I just accidentally created conditions for this error on my
system... I checked in a change to newvers.sh while a buildworld was
running, which led to a situation where newvers.sh was newer than
osreldate.h at the end of the buildworld. Then an installworld tried to
regenerate osreldate.h due to its dependency on newvers.sh, which would
fail if the obj was readonly at that point.
I think we could see if something similar applies for you if you use
this command:
make -dm installworld SUBDIR_OVERRIDE=include
And we'd be looking for the end of the output to be something like:
Examining _libiconv_compat.h...
modified 10:51:18 Sep 28, 2013...up-to-date
Make_Update: _libiconv_compat.h
inspect parent buildincludes: flags 0, type 18001, made 0, unmade 95 - not needed
inspect parent _INCSINS: flags 9, type b000001, made 1, unmade 1 - unmade children
Examining osreldate.h...
modified 10:39:21 Sep 28, 2013...modified before source /local/build/staging/freebsd/head/src/include/../sys/conf/newvers.sh...out-of-date
env ECHO="echo" MAKE="/local/build/staging/freebsd/head/obj/local/build/staging/freebsd/head/src/make.i386/bmake" NEWVERS_SH=/local/build/staging/freebsd/head/src/include/../sys/conf/newvers.sh PARAM_H=/local/build/staging/freebsd/head/src/include/../sys/sys/param.h SYSDIR=/local/build/staging/freebsd/head/src/include/../sys sh /local/build/staging/freebsd/head/src/include/mk-osreldate.sh
env: not found
*** [osreldate.h] Error code 127
The "env: not found" is what I got instead of a permission denied, and
probably has something to do with me cross-building amd64 10.0 from an
i386 8.x machine. I think that's where you'd see the permission error.
If the same sort of thing is happening for you, then all that's left is
to figure out why osreldate.h is out of date at install time, and how to
handle things if that's the case.
-- Ian
More information about the freebsd-current
mailing list