Bug 133994 - kernel crosscompile on amd64 for i386 fails
Summary: kernel crosscompile on amd64 for i386 fails
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: Unspecified
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-bugs (Nobody)
Depends on:
Reported: 2009-04-25 11:40 UTC by kamikaze
Modified: 2009-04-25 21:43 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description kamikaze 2009-04-25 11:40:04 UTC
I'm trying to build RELENG_7 for i386 on an amd64 machine.
I have done this quite often for a long time. It used to work this way:

# env MAKEOBJDIRPREFIX=/usr/obj/VECTRA-7 make -j3 buildworld buildkernel TARGET=i386 KERNCONF=VECTRA-7

This is how it fails (pretty late during kernel build):
===> zyd (all)
env CCACHE_PREFIX=/usr/local/bin/distcc /usr/local/bin/ccache cc -O2 -fno-strict
-aliasing -pipe  -D_KERNEL -DKLD_MODULE -std=c99 -nostdinc   -DHAVE_KERNEL_OPTIO
N_HEADERS -include /usr/obj/VECTRA-7/i386/usr/src/sys/VECTRA-7/opt_global.h -I.
-I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 --param
large-function-growth=1000 -fno-common  -I/usr/obj/VECTRA-7/i386/usr/src/sys/VEC
TRA-7 -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx -mno-3dnow
-mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Wall -Wredundant-decls -Wnested-ext
erns -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-q
ual  -Wundef -Wno-pointer-sign -fformat-extensions -c /usr/src/sys/modules/zyd/.
ld  -d -warn-common -r -d -o if_zyd.kld if_zyd.o
:> export_syms
awk -f /usr/src/sys/modules/zyd/../../conf/kmod_syms.awk if_zyd.kld  export_syms
 | xargs -J% objcopy % if_zyd.kld
ld -Bshareable  -d -warn-common -o if_zyd.ko if_zyd.kld
objcopy --strip-debug if_zyd.ko
1 error
*** Error code 2
1 error
*** Error code 2

Stop in /usr/src.

I don't care about the if_zyd module, to be true, but it still
keeps me from finishing the build.

Funny, though. The situation is even WORSE without -j3:
cc -c -O2 -pipe -fno-strict-aliasing  -std=c99  -Wall -Wredundant-decls -Wnested
-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wca
st-qual  -Wundef -Wno-pointer-sign -fformat-extensions -nostdinc  -I. -I/usr/src
/sys -I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include
 opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --p
aram large-function-growth=1000  -mno-align-long-strings -mpreferred-stack-bound
ary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Werror
/usr/src/sys/dev/ath/if_ath.c -I/usr/src/sys/dev/ath
/usr/src/sys/dev/ath/if_ath.c: In function 'ath_rx_tap':
/usr/src/sys/dev/ath/if_ath.c:3414: error: 'const struct ath_rx_status' has no m
ember named 'rs_flags'
/usr/src/sys/dev/ath/if_ath.c:3416: error: 'const struct ath_rx_status' has no m
ember named 'rs_flags'
*** Error code 1

Stop in /usr/obj/VECTRA-7/i386/usr/src/sys/VECTRA-7.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.

As you can see it breaks early during kernel build.

I just recsupped and there've been no changes, so I didn't get
my sources in the middle of an update.

I rebuilt the amd64 system first, that worked fine.

How-To-Repeat: Set MAKEOBJDIRPREFIX and TARGET=i386 on an amd64 machine and try to build kernel.
Comment 1 kamikaze 2009-04-25 13:23:20 UTC
Can be closed, caused by ath stuff in the kernel config.

I did read UPDATING, but I did not understand that changing
the config is necessary.
Comment 2 Gavin Atkinson freebsd_committer freebsd_triage 2009-04-25 21:43:23 UTC
State Changed
From-To: open->closed

Local problem.  Submitter is happy for this to be closed.