Re: Cross compiling Kernel with all options enabled and compiler wrapper

Nando Schenk <[email protected]> Thu, 21 Aug 2025 01:20:09 +0200
Newsgroups gmane.os.netbsd.devel.toolchain
Message-ID <[email protected]>
On 20/08/2025 12:30, Jörg Sonnenberger wrote:
> Explicitly using -std=gnu99 in HOST_CFLAGS might help.
It did, I was at least able to compile more of the code, though it still 
failed, this time due to some problem with automake. Part of the error 
states that I can pass a flag (--disable-dependency-tracking) to the 
configure script, how can I do that? This is the (as far as I can tell) 
relevant part of the build.sh output:

config.status: executing depfiles commands
config.status: error: in 
`/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/file/obj/build':
config.status: error: Something went wrong bootstrapping makefile fragments
     for automatic dependency tracking.  If GNU make was not used, consider
     re-running the configure script with MAKE="gmake" (or whatever is
     necessary).  You can also try re-running configure with the
     '--disable-dependency-tracking' option to at least be able to build
     the package (albeit without support for automatic dependency tracking).
See `config.log' for more details

*** Failed target:  .configure_done
*** Failed command: (cd build && CC=cc CFLAGS=-std=gnu99 CPPFLAGS=\ 
-D_LARGEFILE_SOURCE\ -D_LARGEFILE64_SOURCE\ -D_FILE_OFFSET_BITS=64 
CXX=c++ AR=ar 
AWK=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbawk 
CC=cc CFLAGS=-std=gnu99 CONFIG_SHELL=/usr/bin/sh CPPFLAGS=\ 
-D_LARGEFILE_SOURCE\ -D_LARGEFILE64_SOURCE\ -D_FILE_OFFSET_BITS=64 
CXX=c++ CXXFLAGS=-O 
INSTALL=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/x86_64--netbsd-install\ 
-c\ \ -r LDFLAGS= 
LEX=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nblex 
FLEX=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nblex 
M4=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbm4 
MAKE=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbmake 
PATH="/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin:$PATH" 
RANLIB=ranlib 
YACC=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbyacc 
ac_cv_path_mkdir="/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/x86_64--netbsd-install 
-d" /usr/bin/sh 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/file/../../external/bsd/file/dist/configure 
--program-prefix=nb --disable-shared --disable-warnings 
--disable-libseccomp 
--prefix=/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64)
*** Error code 1

Stop.
nbmake[3]: stopped in 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/file

*** Failed target:  dependall
*** Failed command: cd 
"/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/file"; 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbmake 
realall
*** Error code 1

Stop.
nbmake[2]: stopped in 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/file

*** Failed target:  dependall-file
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; 
shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; 
real="/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools" 
;; *) this="${dir}/"; 
real="/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/${dir}" 
;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: 
$@)}"; cd "${real}" && 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbmake 
_THISDIR_="${this}" "$@" ${target}; }; _makedirtarget file dependall
*** Error code 1

Stop.
nbmake[1]: stopped in 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools

*** Failed target:  build_install
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; 
shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this=""; 
real="/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools" 
;; *) this="${dir}/"; 
real="/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools/${dir}" 
;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: 
$@)}"; cd "${real}" && 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/obj/tooldir.Linux-6.16.1-arch1-1-x86_64/bin/nbmake 
_THISDIR_="${this}" "$@" ${target}; }; _makedirtarget . 
dependall-ctfconvert dependall-ctfmerge dependall-asn1_compile 
dependall-cksum dependall-compile_et dependall-db dependall-file 
dependall-lint1 dependall-slc dependall-makefs dependall-sortinfo
*** Error code 1

Stop.
nbmake: stopped in 
/home/nando/Documents/Schule/Maturitaetsarbeit/neu/netbsd-src-ftp/src/tools

ERROR: Failed to make build_install in "tools"

*** BUILD ABORTED ***


In the mentioned log file there were multiple fatal errors talking about 
missing header files:
conftest.c:51:10: fatal error: minix/config.h: No such file or directory
    51 | #include <minix/config.h>
       |          ^~~~~~~~~~~~~~~~
compilation terminated.

(same thing for lzlib.h, vfork.h, sys/mkdev.h, xlocale.h, sys/bswap.h, 
sys/utime.h)

On 20/08/2025 13:33, Mouse wrote:
> This is a very long-standing bug in NetBSD;
> In the immediate term, you might be able to find an option to tell the
> compiler to use a pre-C23 standard.

Maybe it might be worth to note that in e.g., tools/compat/README if it 
is a common problem.


Nando