On 8/2/22 15:45, Warner Losh wrote:
On Tue, Feb 8, 2022 at 3:43 AM George Abdelmalik <geo...@fork.id.au>
wrote:
On 7/2/22 03:50, qroxana wrote:
I know running make install for
/usr/src/tools/build/test-includes can fix this,
but this still fails on a newly installed 14.0-CURRENT.
--- test-includes ---
cd /usr/src/tools/build/test-includes; MACHINE_ARCH=aarch64
MACHINE=arm64 CPUTYPE= CC="cc -target
aarch64-unknown-freebsd14.0
--sysroot=/usr/obj/usr/src/arm64.aarch64/tmp
-B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin -target
aarch64-unknown-freebsd14.0
--sysroot=/usr/obj/usr/src/arm64.aarch64/tmp
-B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin" CXX="c++ -target
aarch64-unknown-freebsd14.0
--sysroot=/usr/obj/usr/src/arm64.aarch64/tmp
-B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin -target
aarch64-unknown-freebsd14.0
--sysroot=/usr/obj/usr/src/arm64.aarch64/tmp
-B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin" CPP="cpp -target
aarch64-unknown-freebsd14.0
--sysroot=/usr/obj/usr/src/arm64.aarch64/tmp
-B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin -target
aarch64-unknown-freebsd14.0
--sysroot=/usr/obj/usr/src/arm64.aarch64/tmp
-B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin" AS="as" AR="ar"
ELFCTL="elfctl" LD="ld" LLVM_LINK="" NM=nm OBJCOPY="objcopy"
RANLIB=ranlib STRINGS= SIZE="size" STRIPBIN="strip"
INSTALL="install -U"
PATH=/usr/obj/usr/src/arm64.aarch64/tmp/bin:/usr/obj/usr/src/arm64.aarch64/tmp/usr/sbin:/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/sbin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/libexec::/usr/obj/usr/src/arm64.aarch64/tmp/bin:/usr/obj/usr/src/arm64.aarch64/tmp/usr/sbin:/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/sbin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin:/usr/obj/usr/src/arm64.aarch64/tmp/legacy/usr/libexec::/sbin:/bin:/usr/sbin:/usr/bin
SYSROOT=/usr/obj/usr/src/arm64.aarch64/tmp make
DESTDIR=/usr/obj/usr/src/arm64.aarch64/tmp test-includes
--- sys/abi_compat.c ---
--- sys/acct.c ---
--- sys/acl.c ---
--- sys/aio.c ---
--- sys/abi_compat.c ---
echo "#include <sys/abi_compat.h>" > sys/abi_compat.c
sh: cannot create sys/abi_compat.c: No such file or directory
*** [sys/abi_compat.c] Error code 2
make[4]: stopped in /usr/src/tools/build/test-includes
--- sys/acct.c ---
echo "#include <sys/acct.h>" > sys/acct.c
sh: cannot create sys/acct.c: No such file or directory
*** [sys/acct.c] Error code 2
make[4]: stopped in /usr/src/tools/build/test-includes
--- sys/aio.c ---
echo "#include <sys/aio.h>" > sys/aio.c
sh: cannot create sys/aio.c: No such file or directory
*** [sys/aio.c] Error code 2
make[4]: stopped in /usr/src/tools/build/test-includes
--- sys/acl.c ---
echo "#include <sys/acl.h>" > sys/acl.c
sh: cannot create sys/acl.c: No such file or directory
*** [sys/acl.c] Error code 2
Same here for me for the past couple of weeks. Haven't been able
to identify why it fails. My hunch was that a particular objdir
wasn't being created. As a workaround I edited the Makefile.inc1
to remove the test-includes command (line 1128 I think).
I'd really like to understand why this error comes about. If
someone has any insights, please share them :)
What build options are you using? this is the test to make sure that
files can be included on their own.
Warner
Hi Warner,
My make.conf contains:
# make.conf(5) to use when building world.
MALLOC_PRODUCTION=
My src.conf contains:
## src.conf(5) to use when building world.
WITHOUT_IPFILTER=
WITHOUT_PF=
WITHOUT_PPP=
WITHOUT_LPR=
WITHOUT_NIS=
WITHOUT_LIB32=
WITHOUT_HYPERV=
WITHOUT_APM=
WITHOUT_ATM=
WITHOUT_FINGER=
WITHOUT_FLOPPY=
WITHOUT_RADIUS_SUPPORT=
WITHOUT_DEBUG_FILES=
WITHOUT_TESTS=
The build command is:
env MAKEOBJDIRPREFIX=$HOME/obj \
make -j2 \
-DNO_CLEAN \
__MAKE_CONF=$HOME/make.conf \
SRCCONF=$HOME/src.conf \
TARGET=amd64 \
TARGET_ARCH=amd64 \
CPUTYPE= \
buildworld
Perhaps the issue is that I first build the toolchain as a separate step
prior to invoking buildworld, that command is:
env MAKEOBJDIRPREFIX=$HOME/obj \
make -j2 \
__MAKE_CONF=$HOME/make.conf \
SRCCONF=$HOME/src.conf \
TARGET=amd64 \
TARGET_ARCH=amd64 \
toolchain
Thanks for your interest,
George.