Example of Bryan Drewery's "Something is very wrong" (from his disabling head/Makefile)?: obj-cross-tools path referenced but file is under obj-bootstrap-tools
Mark Millard
markmi at dsl-only.net
Fri Nov 3 08:59:21 UTC 2017
I did get another problem after buildworld, buildkernel, installkernel
without future source code dates: the installworld got a "cc not found"
for the amd64 native build based on -r325351 --that also appears to be
set up to report:
ERROR-tried-to-rebuild-during-make-install
if cc had been found:
.if defined(SRCTOP)
# Prevent rebuilding during install to support read-only objdirs.
.if ${.TARGETS:M*install*} == ${.TARGETS} && empty(.MAKE.MODE:Mmeta)
CFLAGS+= ERROR-tried-to-rebuild-during-make-install
.endif
.endif
is involved in:
Script started on Fri Nov 3 00:52:26 2017
Command: env __MAKE_CONF=/root/src.configs/make.conf SRCCONF=/dev/null SRC_ENV_CONF=/root/src.configs/src.conf.amd64-clang.amd64-host WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/amd64_clang/amd64.amd64 make -dM -j4 installworld
. . .
--- realinstall_subdir_sys ---
--- autoload.o ---
--- realinstall_subdir_secure ---
rm -f /usr/share/openssl/man/man3/SSL_set_generate_session_id.3 /usr/share/openssl/man/man3/SSL_set_generate_session_id.3.gz; install -l h /usr/share/openssl/man/man3/SSL_CTX_set_generate_session_id.3.gz /usr/share/openssl/man/man3/SSL_set_generate_session_id.3.gz
--- realinstall_subdir_sys ---
cc -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -ffreestanding -Wformat -mno-mmx -mno-sse -mno-avx -msoft-float -fshort-wchar -mno-red-zone -mno-aes -DLOADER_UFS_SUPPORT -DLOADER_DISK_SUPPORT -DLOADER_GPT_SUPPORT -DLOADER_MBR_SUPPORT -DLOADER_GELI_SUPPORT -I/usr/src/sys/boot/libsa -I/usr/src/sys/boot/zfs -DEFI_ZFS_BOOT -fPIC -DTERM_EMU -I/usr/src/sys/boot/efi/loader -I/usr/src/sys/boot/efi/loader/arch/amd64 -I/usr/src/sys/boot/efi/include -I/usr/src/sys/boot/efi/include/amd64 -I/usr/src/sys/contrib/dev/acpica/include -I/usr/src/sys -I/usr/src/sys/boot/i386/libi386 -DNO_PCI -DEFI -DSMBIOS_SERIAL_NUMBERS -I/usr/src/sys/boot/common -fPIC -I/usr/src/sys/boot/ficl -I/usr/src/sys/boot/ficl/amd64 -I/usr/src/sys/boot/common -DBOOT_FORTH -DBF_DICTSIZE=15000 -g -std=gnu99 -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Qunused-arguments ERROR-tried-to-rebuild-during-make-install -c /usr/src/sys/boot/efi/loader/autoload.c -o autoload.o
sh: cc: not found
--- realinstall_subdir_secure ---
rm -f /usr/share/openssl/man/man3/SSL_CTX_get_info_callback.3 /usr/share/openssl/man/man3/SSL_CTX_get_info_callback.3.gz; install -l h /usr/share/openssl/man/man3/SSL_CTX_set_info_callback.3.gz /usr/share/openssl/man/man3/SSL_CTX_get_info_callback.3.gz
--- realinstall_subdir_sys ---
*** [autoload.o] Error code 127
make[7]: stopped in /usr/src/sys/boot/efi/loader
1 error
make[7]: stopped in /usr/src/sys/boot/efi/loader
*** [realinstall_subdir_sys/boot/efi/loader] Error code 2
Or without -j4:
Script started on Fri Nov 3 01:38:54 2017
Command: env __MAKE_CONF=/root/src.configs/make.conf SRCCONF=/dev/null SRC_ENV_CONF=/root/src.configs/src.conf.amd64-clang.amd64-host WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/amd64_clang/amd64.amd64 make -dM installworld
. . .
===> sys/boot/libsa32 (install)
===> sys/boot/zfs (install)
===> sys/boot/zfs32 (install)
===> sys/boot/ficl32 (install)
===> sys/boot/efi (install)
===> sys/boot/efi/libefi (install)
===> sys/boot/efi/loader (install)
cc -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -ffreestanding -Wformat -mno-mmx -mno-sse -mno-avx -msoft-float -fshort-wchar -mno-red-zone -mno-aes -DLOADER_UFS_SUPPORT -DLOADER_DISK_SUPPORT -DLOADER_GPT_SUPPORT -DLOADER_MBR_SUPPORT -DLOADER_GELI_SUPPORT -I/usr/src/sys/boot/libsa -I/usr/src/sys/boot/zfs -DEFI_ZFS_BOOT -fPIC -DTERM_EMU -I/usr/src/sys/boot/efi/loader -I/usr/src/sys/boot/efi/loader/arch/amd64 -I/usr/src/sys/boot/efi/include -I/usr/src/sys/boot/efi/include/amd64 -I/usr/src/sys/contrib/dev/acpica/include -I/usr/src/sys -I/usr/src/sys/boot/i386/libi386 -DNO_PCI -DEFI -DSMBIOS_SERIAL_NUMBERS -I/usr/src/sys/boot/common -fPIC -I/usr/src/sys/boot/ficl -I/usr/src/sys/boot/ficl/amd64 -I/usr/src/sys/boot/common -DBOOT_FORTH -DBF_DICTSIZE=15000 -g -std=gnu99 -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Qunused-arguments ERROR-tried-to-rebuild-during-make-install -c /usr/src/sys/boot/efi/loader/autoload.c -o autoload.o
/tmp/install.2mZZVhR0/sh: cc: not found
*** Error code 127
Stop.
make[7]: stopped in /usr/src/sys/boot/efi/loader
*** Error code 1
I'll note:
# ls -lT /usr/src/sys/boot/efi/loader/autoload.c
-rw-r--r-- 1 root wheel 1522 Nov 3 02:27:17 2016 /usr/src/sys/boot/efi/loader/autoload.c
# find /usr/obj/amd64_clang/amd64.amd64/ -name autoload.o -exec ls -lT {} \; | more
-rw-r--r-- 1 root wheel 2896 Nov 3 00:10:12 2017 /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/sys/boot/efi/loader/autoload.o
(So the .o is about a year later.)
# which cc
/usr/bin/cc
# find /usr/obj/amd64_clang/amd64.amd64/ -name cc -print | more
/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/obj-lib32/tmp/usr/include/netinet/cc
/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/sys/GENERIC-NODBG/modules/usr/src/sys/modules/cc
/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/include/netinet/cc
/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/usr/include/netinet/cc
It appears that /usr/bin was not part of the path at
the time of the failure.
As for the commands. . .
(I isolated CC= on its own lines.)
Script started on Fri Nov 3 00:52:26 2017
Command: env __MAKE_CONF=/root/src.configs/make.conf SRCCONF=/dev/null SRC_ENV_CONF=/root/src.configs/src.conf.amd64-clang.amd64-host WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/amd64_clang/amd64.amd64 make -dM -j4 installworld
--- installworld ---
make[1]: "/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/compiler-metadata.mk" line 1: Using cached compiler metadata from build at FreeBSDx64OPC on Thu Nov 2 23:02:54 PDT 2017
--- __installcheck_UGID ---
--- __installcheck_sh_check ---
--- installworld ---
mkdir -p /tmp/install.hnB8rBdc
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 $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.hnB8rBdc
cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.hnB8rBdc/locale
cd /usr/src; COMPILER_VERSION=50000 COMPILER_FEATURES=c++11 COMPILER_TYPE=clang COMPILER_FREEBSD_VERSION=1200007 MACHINE_ARCH=amd64 MACHINE=amd64 CPUTYPE=
CC="cc -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin"
CXX="c++ -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin" CPP="cpp -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin" AS="as" AR="ar" LD="ld" LLVM_LINK="" NM=nm OBJCOPY="objcopy" RANLIB=ranlib STRINGS= SIZE="size" PATH=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/usr/sbin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/usr/bin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/bin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/sbin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin:/tmp/install.hnB8rBdc LD_LIBRARY_PATH=/tmp/install.hnB8rBdc PATH_LOCALE=/tmp/install.hnB8rBdc/locale make -f Makefile.inc1 __MAKE_SHELL=/tmp/install.hnB8rBdc/sh reinstall; COMPILER_VERSION=50000 COMPILER_FEATURES=c++11 COMPILER_TYPE=clang COMPILER_FREEBSD_VERSION=1200007 MACHINE_ARCH=amd64 MACHINE=amd64 CPUTYPE= CC="cc -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin" CXX="c++ -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin" CPP="cpp -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp -B/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin" AS="as" AR="ar" LD="ld" LLVM_LINK="" NM=nm OBJCOPY="objcopy" RANLIB=ranlib STRINGS= SIZE="size" PATH=/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/usr/sbin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/usr/bin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/legacy/bin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/sbin:/usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/tmp/usr/bin:/tmp/install.hnB8rBdc LD_LIBRARY_PATH=/tmp/install.hnB8rBdc PATH_LOCALE=/tmp/install.hnB8rBdc/locale rm -rf /tmp/install.hnB8rBdc
--- reinstall ---
. . .
# more /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/compiler-metadata.mk
.info Using cached compiler metadata from build at FreeBSDx64OPC on Thu Nov 2 23:02:54 PDT 2017
COMPILER_VERSION=50000
COMPILER_TYPE=clang
COMPILER_FEATURES=c++11
COMPILER_FREEBSD_VERSION=1200007
LINKER_VERSION=21750
LINKER_TYPE=bfd
.export COMPILER_VERSION COMPILER_TYPE COMPILER_FEATURES COMPILER_FREEBSD_VERSION LINKER_VERSION LINKER_TYPE
# more /root/src.configs/make.conf
CFLAGS.gcc+= -v
# more /root/src.configs/src.conf.amd64-clang.amd64-host
TO_TYPE=amd64
#
KERNCONF=GENERIC-NODBG
TARGET=${TO_TYPE}
.if ${.MAKE.LEVEL} == 0
TARGET_ARCH=${TO_TYPE}
.export TARGET_ARCH
.endif
#
#WITH_CROSS_COMPILER=
WITH_SYSTEM_COMPILER=
#
WITH_LIBCPLUSPLUS=
WITH_BINUTILS_BOOTSTRAP=
WITH_ELFTOOLCHAIN_BOOTSTRAP=
#WITH_CLANG_BOOTSTRAP=
WITH_CLANG=
WITH_CLANG_IS_CC=
WITH_CLANG_FULL=
WITH_CLANG_EXTRAS=
WITH_LLD=
WITHOUT_LLD_IS_LD=
WITH_LLVM_LIBUNWIND=
WITH_LLDB=
#PORTS_MODULES=emulators/virtualbox-ose-additions
#
WITH_BOOT=
WITH_LIB32=
#
WITHOUT_GCC_BOOTSTRAP=
WITHOUT_GCC=
WITHOUT_GCC_IS_CC=
WITHOUT_GNUCXX=
#
NO_WERROR=
#WERROR=
MALLOC_PRODUCTION=
#
WITH_REPRODUCIBLE_BUILD=
WITH_DEBUG_FILES=
===
Mark Millard
markmi at dsl-only.net
>>> . . .
>>> Script started on Thu Nov 2 18:34:57 2017
>>> Command: env __MAKE_CONF=/root/src.configs/make.conf SRCCONF=/dev/null SRC_ENV_CONF=/root/src.configs/src.conf.amd64-clang.amd64-host WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/amd64_clang/amd64.amd64 make -j4 buildworld buildkernel
>>>
>>> vs.
>>>
>>> Script started on Thu Nov 2 18:34:57 2017
>>> Command: env __MAKE_CONF=/root/src.configs/make.conf SRCCONF=/dev/null SRC_ENV_CONF=/root/src.configs/src.conf.amd64-clang.amd64-host WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/amd64_clang/amd64.amd64 make -j4 buildworld buildkernel
>>>
>>>
>>> # svnlite status -u -r325351 /usr/src | sort
>>> * 320623 /usr/src/contrib/jemalloc/include/jemalloc/internal/tsd.h
>>> ? /usr/src/sys/amd64/conf/GENERIC-DBG
>>> ? /usr/src/sys/amd64/conf/GENERIC-NODBG
>>> ? /usr/src/sys/arm/conf/GENERIC-DBG
>>> ? /usr/src/sys/arm/conf/GENERIC-NODBG
>>> ? /usr/src/sys/arm64/conf/GENERIC-DBG
>>> ? /usr/src/sys/arm64/conf/GENERIC-NODBG
>>> ? /usr/src/sys/powerpc/conf/GENERIC64vtsc-DBG
>>> ? /usr/src/sys/powerpc/conf/GENERIC64vtsc-NODBG
>>> ? /usr/src/sys/powerpc/conf/GENERICvtsc-DBG
>>> ? /usr/src/sys/powerpc/conf/GENERICvtsc-NODBG
>>> M 325351 /usr/src/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
>>> M 325351 /usr/src/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp
>>> M 325351 /usr/src/crypto/openssl/crypto/armcap.c
>>> M 325351 /usr/src/lib/libkvm/kvm_powerpc.c
>>> M 325351 /usr/src/lib/libkvm/kvm_private.c
>>> M 325351 /usr/src/sys/arm/allwinner/aw_usbphy.c
>>> M 325351 /usr/src/sys/arm64/arm64/identcpu.c
>>> M 325351 /usr/src/sys/boot/fdt/dts/arm/a83t.dtsi
>>> M 325351 /usr/src/sys/boot/ofw/Makefile.inc
>>> M 325351 /usr/src/sys/boot/powerpc/Makefile.inc
>>> M 325351 /usr/src/sys/boot/powerpc/boot1.chrp/Makefile
>>> M 325351 /usr/src/sys/boot/powerpc/kboot/Makefile
>>> M 325351 /usr/src/sys/boot/uboot/Makefile.inc
>>> M 325351 /usr/src/sys/conf/kmod.mk
>>> M 325351 /usr/src/sys/conf/ldscript.powerpc
>>> M 325351 /usr/src/sys/kern/subr_pcpu.c
>>> M 325351 /usr/src/sys/powerpc/aim/mmu_oea64.c
>>> M 325351 /usr/src/sys/powerpc/ofw/ofw_machdep.c
>>> M 325351 /usr/src/sys/powerpc/powerpc/interrupt.c
>>> M 325351 /usr/src/sys/powerpc/powerpc/mp_machdep.c
>>> M 325351 /usr/src/sys/powerpc/powerpc/trap.c
>>>
>>>
>>> --------------------------------------------------------------
>>>>>> stage 5.1: building lib32 shim libraries
>>> --------------------------------------------------------------
>>> . . .
>>> --- obj ---
>>> --- lib/libgcc_eh__PL ---
>>> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/obj-lib32/amd64.amd64/lib/libgcc_eh/libunwind.o
>>> --- gnu/lib/libssp/libssp_nonshared__PL ---
>>> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/obj-lib32/amd64.amd64/gnu/lib/libssp/libssp_nonshared/_libinstall
>>> . . .
>>> . . .
>>>
>>> And so on.
>>
>> ===
>> Mark Millard
>> markmi at dsl-only.net
>>
>> On 2017-Nov-2, at 5:30 PM, Bryan Drewery <bdrewery at FreeBSD.org> wrote:
>>
>> On 11/2/17 3:44 PM, Mark Millard wrote:
>>>> Author: bdrewery
>>>> Date: Thu Nov 2 22:23:00 2017
>>>> New Revision: 325347
>>>> URL:
>>>> https://svnweb.freebsd.org/changeset/base/325347
>>>>
>>>>
>>>> Log:
>>>> Something is very wrong
>>>>
>>>> Modified:
>>>> head/Makefile
>>>>
>>>> Modified: head/Makefile
>>>> ==============================================================================
>>>> --- head/Makefile Thu Nov 2 21:58:18 2017 (r325346)
>>>> +++ head/Makefile Thu Nov 2 22:23:00 2017 (r325347)
>>>> @@ -1,3 +1,4 @@
>>>> +.error Bad revision, please wait for a fix in head
>>>> #
>>>> # $FreeBSD$
>>>> #
>>>
>>> I just happened to have started a cross build before
>>> this showed up based on -r325332 . It got:
>>>
>>> --- clang-tblgen.full ---
>>> c++: error: no such file or directory: '/usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7/tmp/obj-cross-tools/lib/clang/libllvmminimal/libllvmminimal.a'
>>> *** [clang-tblgen.full] Error code 1
>>
>> Someone else reported this one as well but I have not been able to
>> reproduce it yet.
>>
>> I've tweaked the commit causing it though, r325329. Fixed in r325350.
>>
>>>
>>> But find shows:
>>>
>>> # find /usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7 -name "libllvmminimal*" -print | more
>>> /usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7/tmp/obj-bootstrap-tools/lib/clang/libllvmminimal
>>> /usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7/tmp/obj-bootstrap-tools/lib/clang/libllvmminimal/libllvmminimal.a
>>> /usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7/tmp/obj-bootstrap-tools/lib/clang/libllvmminimal/libllvmminimal.a.meta
>>>
>>> Comparing side-by-side shows obj-cross-tools vs.
>>> obj-bootstrap-tools :
>>>
>>> /usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7/tmp/obj-cross-tools/lib/clang/libllvmminimal/libllvmminimal.a
>>> /usr/obj/bpim3_clang/arm.armv7/usr/src/arm.armv7/tmp/obj-bootstrap-tools/lib/clang/libllvmminimal/libllvmminimal.a
>>>
>>>
>>> ===
>>> Mark Millard
>>> markmi at dsl-only.net
>>>
>>
>>
>
===
Mark Millard
markmi at dsl-only.net
More information about the freebsd-hackers
mailing list