Bug 20021

Summary: 4.0-STABLE kernel compile dies
Product: Base System Reporter: key <key>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 4.0-STABLE   
Hardware: Any   
OS: Any   

Description key 2000-07-19 02:30:00 UTC
4.0-STABLE kernel compile dies.  I have updated the stable source using
cvsup immediately before the compile, but to no avail.  Here is the 
relevant output from the kernel compile:

--------------------
su-2.03# make
[many files which compiled correctly are omitted]
cc -c -x assembler-with-cpp -DLOCORE -O -Wall -Wredundant-decls -Wnested-externs 
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -
fformat-extensions -ansi  -nostdinc -I- -I. -I../.. -I../../../include  -D_KERNEL
 -include opt_global.h -elf  -mpreferred-stack-boundary=2 ../../i386/i386/bioscal
l.s
/tmp/ccEc7898.s: Assembler messages:
/tmp/ccEc7898.s:773: Error: operands given don't match any known 386 instruction
/tmp/ccEc7898.s:838: Error: operands given don't match any known 386 instruction
*** Error code 1

Stop in /usr/src/sys/compile/HERR_NIETZSCHE.
su-2.03#
--------------------

The problem is not with my kernel config file, since it compiled correctly
on June 18.

How-To-Repeat: * cvsup the 4.0 stable source (RELENG_4) (I did it from cvsup3.freebsd.org)
* create your kernel config file
* cd ../../compile/KERNEL_NAME
* make clean
* make depend
* make
Comment 1 Will Andrews 2000-07-19 03:43:14 UTC
On Tue, Jul 18, 2000 at 06:24:04PM -0700, key@purdue.edu wrote:
> >Synopsis:       4.0-STABLE kernel compile dies

Actually, 4.1-RC now.  :)

> su-2.03# make
> [many files which compiled correctly are omitted]
> cc -c -x assembler-with-cpp -DLOCORE -O -Wall -Wredundant-decls -Wnested-externs 
> -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -
> fformat-extensions -ansi  -nostdinc -I- -I. -I../.. -I../../../include  -D_KERNEL
>  -include opt_global.h -elf  -mpreferred-stack-boundary=2 ../../i386/i386/bioscal
> l.s
> /tmp/ccEc7898.s: Assembler messages:
> /tmp/ccEc7898.s:773: Error: operands given don't match any known 386 instruction
> /tmp/ccEc7898.s:838: Error: operands given don't match any known 386 instruction
> *** Error code 1

We over at PHYS encountered the same problem trying to upgrade one of
our RELENG_4 systems.  The problem is caused by not having the new
Binutils 2.10.0, which supports those 386 instructions, installed
beforehand.  Simple solution is to run ``make install'' in /usr/src/gnu
before trying a kernel build.  This is normally covered by an
installworld.

Take care,

-- 
Will Andrews <andrewsw@purdue.edu> <will@FreeBSD.org>
GCS/E/S @d- s+:+>+:- a--->+++ C++ UB++++ P+ L- E--- W+++ !N !o ?K w---
?O M+ V-- PS+ PE++ Y+ PGP+>+++ t++ 5 X++ R+ tv+ b++>++++ DI+++ D+ 
G++>+++ e->++++ h! r-->+++ y?
Comment 2 Will Andrews freebsd_committer freebsd_triage 2000-07-19 03:46:21 UTC
State Changed
From-To: open->closed

Originator needs to install new Binutils first, and read 
src/UPDATING occassoinally I suppose.  :)