On Wed, 21 Apr 2004, Andrew Gay wrote:
> I'm having trouble building exim 4.31 on a fairly old Solaris 2.5.1 box.
I have not been able to test exim on 2.5.1 for several years now.
In effect, support for it is not longer guaranteed, I'm afraid.
> In file included from os.c:2:
> ../src/os.c:376: union has no member named `ui32'
> *** Error code 1
> This has me baffled, as there is no mention of 'ui32' in os.c (or anywhere
> else I looked).
Line 376 is
avg = (int)(((double)(kn->LOAD_AVG_FIELD)/FSCALE) * 1000.0);
so the problem is in the definition of LOAD_AVG_FIELD. A grep in the OS
source directory shows
OS/os.h-SunOS5:#define LOAD_AVG_FIELD value.ui32
so that is what you'll have to change. What to change it to? The
variable kn is defined as
kstat_named_t *kn;
so you'll have to grep around /usr/include to find out what the fields
in the kstat_named_t structure are called. It might just be "value.int".
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.
Get the Exim 4 book: http://www.uit.co.uk/exim-book