Deterministic rescue buildworld error with custom make.conf/src.conf/MAKEOBJDIRPREFIX
Lawrence Stewart
lstewart at freebsd.org
Sat Mar 11 23:23:40 UTC 2017
Hi all,
I'm unable to complete buildworld with 2 recent svn revs I've tried
(r314838 and r315059). I'm building for a slightly resource constrained
production system so am specifying custom settings and a different obj
tree location so I can copy it to the target system. The error persists
after an "rm -rf /usr/obj/*", and if parallel building is disabled.
The underlying build system built from r314838 via simple "make -C
/usr/src -s -j6 buildworld buildkernel" built and installed fine, so the
problem seems to be around the use of the build customisations.
Any clues?
Cheers,
Lawrence
root at builder-head-amd64:/usr/src # cat cust_make.conf
KERNCONF=GENERIC-NODEBUG
MALLOC_PRODUCTION=YES
root at builder-head-amd64:/usr/src # cat cust_src.conf
WITHOUT_PROFILE=1
root at builder-head-amd64:/usr/src # make
__MAKE_CONF=/usr/src/cust_make.conf SRCCONF=/usr/src/cust_src.conf
MAKEOBJDIRPREFIX=/usr/obj/cust buildworld buildkernel
[...]
MK_AUTO_OBJ=no MK_TESTS=no UPDATE_DEPENDFILE=no _RECURSING_CRUNCH=1
CC="cc -target x86_64-unknown-freebsd12.0
--sysroot=/usr/obj/cust/usr/src/tmp -B/usr/obj/cust/usr/src/tmp/usr/bin
-O2 -pipe -std=gnu99 -Qunused-arguments " CXX="c++ -target
x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/cust/usr/src/tmp
-B/usr/obj/cust/usr/src/tmp/usr/bin -O2 -pipe -Qunused-arguments
-Wno-c++11-extensions " make .MAKE.MODE="normal curdirOk=yes"
.MAKE.META.IGNORE_PATHS="" -f rescue.mk exe
cc -target x86_64-unknown-freebsd12.0
--sysroot=/usr/obj/cust/usr/src/tmp -B/usr/obj/cust/usr/src/tmp/usr/bin
-O2 -pipe -std=gnu99 -Qunused-arguments -nostdlib -Wl,-dc -r -o
cat.lo cat_stub.o /usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/cat/cat.o
cc: error: no such file or directory:
'/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/cat/cat.o'
*** Error code 1
There appear to be a lot of missing .o files under the rescue obj tree:
root at builder-head-amd64:/usr/src # find
/usr/obj/cust/usr/src/rescue/rescue//usr -type f
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mksyntax.o
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mksyntax
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mknodes.o
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/sh/mknodes
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/csh/sh.err.h
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/csh/tc.const.h
/usr/obj/cust/usr/src/rescue/rescue//usr/src/bin/csh/gethost
compared with an obj tree on a different head system:
find /usr/obj/usr/src/rescue/rescue/usr/ -type f | wc -l
1552
More information about the freebsd-current
mailing list