[Bug 212877] `make installworld' from r302966 to r306043 fails (bsd.compiler.mk fails to call cc --version)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Sep 21 09:16:21 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=212877

            Bug ID: 212877
           Summary: `make installworld' from r302966 to r306043 fails
                    (bsd.compiler.mk fails to call cc --version)
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: misc
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: rakuco at FreeBSD.org
                CC: bdrewery at FreeBSD.org, dim at FreeBSD.org,
                    imp at FreeBSD.org, sjg at FreeBSD.org

I have a setup where I build world and kernel on one beefy machine and set up
read-only NFS mounts for /usr/src and /usr/obj to install them into my laptop.

This time, I was trying to upgrade from r302966 to r306043. `make
installkernel` worked fine, but `make installworld` did not. The failure
happens right at the beginning:

progs=$(for prog in [ awk cap_mkdb cat chflags chmod chown cmp cp  date echo
egrep find grep id install   ln make mkdir mtree mv pwd_mkdb  rm sed
services_mkdb sh strip sysctl test true uname wc zic tzsetup   makewhatis; do 
if progpath=`which $prog`; then  echo $progpath;  else  echo "Required tool
$prog not found in PATH." >&2;  exit 1;  fi;  done);  libs=$(ldd -f "%o %p\n"
-f "%o %p\n" $progs 2>/dev/null | sort -u |  while read line; do  set -- $line;
 if [ "$2 $3" != "not found" ]; then  echo $2;  else  echo "Required library $1
not found." >&2;  exit 1;  fi;  done);  cp $libs $progs /tmp/install.3UpJSkkF
cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.3UpJSkkF/locale
cd /usr/src; MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64  MACHINE=amd64 
CPUTYPE=ivybridge GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin 
GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font 
GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac CC="cc -target
x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
-B/usr/obj/usr/src/tmp/usr/bin" CXX="c++  -target x86_64-unknown-freebsd12.0
--sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin"  CPP="cpp
-target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
-B/usr/obj/usr/src/tmp/usr/bin"  AS="as" AR="ar" LD="ld" NM=nm 
OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size"
PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.3UpJSkkF
 LD_LIBRARY_PATH=/tmp/install.3UpJSkkF 
PATH_LOCALE=/tmp/install.3UpJSkkF/locale /usr/obj/usr/src/make.amd64/bmake -f
Makefile.inc1    __MAKE_SHELL=/tmp/install.3UpJSkkF/sh reinstall; 
MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64  MACHINE=amd64  CPUTYPE=ivybridge
GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin 
GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font 
GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/tmac CC="cc -target
x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
-B/usr/obj/usr/src/tmp/usr/bin" CXX="c++  -target x86_64-unknown-freebsd12.0
--sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin"  CPP="cpp
-target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
-B/usr/obj/usr/src/tmp/usr/bin"  AS="as" AR="ar" LD="ld" NM=nm 
OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size"
PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.3UpJSkkF
 LD_LIBRARY_PATH=/tmp/install.3UpJSkkF 
PATH_LOCALE=/tmp/install.3UpJSkkF/locale rm -rf /tmp/install.3UpJSkkF
sh: cc: not found
bmake[2]: "/usr/src/share/mk/bsd.compiler.mk" line 145: Unable to determine
compiler type for CC=cc -target x86_64-unknown-freebsd12.0
--sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin.  Consider
setting COMPILER_TYPE.

Note the "sh: cc: not found" part above -- because I'm moving from
__FreeBSD_cc_version 1200000 to 1200002, Makefile.inc1 is not setting
MK_CLANG_BOOTSTRAP=no, so bsd.compiler.mk is trying to determine the compiler
and its version again, but there's no `cc' in the PATH that's being passed,
only the actual binary (`clang').

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list