Subject: Re: Kernel Compiling and other problems
To: A.S.MCGough <riscbsd@court4.ncl.ac.uk>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm32
Date: 12/10/1997 10:23:03
> 
> Ok, I must be doing something wrong but all recent attempts to compile
> kernels has failed. I have 1.3A installed from the ftp site and have
> supped down the latest current and arm32 sources. I am trying to compile
> the RISCPC config (just to try and get anything compiled). The following
> commands are issued
> 
> config RISCPC
> cd ../compile/RISCPC
> make depend
> make
> 
> The compilation gets as far as compiling disassem.c and stops with the
> following error:
> 
> In file included from ../../../../arch/arm32/arm32/disassem.c:54:
> ../../../../arch/arm32/arm32/disassem.h:43: argument format specified for
> non-function `di_printf'
> *** Error code 1
> 
> Stop.
> 
> By my reconing di_printf is a function so is this a mistake or is the
> compiler going wrong. Any suggestions would be greatly recieved.
> 

I ran into this problem as well.  The header file is trying to add an 
attribute to a pointer to a function.  I would have thought this is legal, 
but perhaps gcc is choking somewhere.  This attribute is a special netbsd 
extension to gcc (which doesn't normally understand the behaviour of the 
kprintf function).

In the end I worked around it by commenting out the attribute entry (it 
won't harm anything by not being there, since it is just a way of allowing 
the compiler to check the arguments to some variadic functions).

The other alternative (if you don't want to edit the source) is to compile 
with -U__KPRINTF_ATTRIBUTE__.  You can work this into your configuration 
if you wish.

Mark, do you have any special additions to the cc you use to compile 
kernels, the released cc can't grok this.

> 
> The reason I need to compile a new kernel is due to my CD-ROM drive - I've
> mentioned before that it seems to crash out the system at boot time at the
> point when the ide chain is being probed. The only current solution is to
> physically disconnect the drive before booting to riscbsd. I can't
> remember who at acorn world (mark?) said that he thought this was fixed
> but if not to inform him. The drive is the standard 2 speed ide atapi
> drive that acorn shipped some  two years ago - make and model are unknown
> but I could provide them if needed (or after the next power down).
> 
> 
> I also seem to be getting excessive network errors from my etherH card.
> These are of the format 
> 
> Dec 10 00:00:12 mercer /netbsd: eh: no carrier
> Dec 10 00:00:12 mercer /netbsd: eh: Interrupt not serviced
> Dec 10 00:00:12 mercer /netbsd: eh: Receive Error: packet received intact
> (this should happen)
> 
> When transfering large files - These are of the ratio of ~100 errors per
> meg of data transfered. (This caused extremely large log files when
> installing over NFS!). The computer is on a private network with only one
> other computer, thus this should not be affected by other factors.
> 

Can't help with this bit.

Richard.