1825768 Members
2146 Online
109687 Solutions
New Discussion

Error compiling Kernel

 
MR Dorobantu Dragos
Frequent Advisor

Error compiling Kernel

I tried to modify some kernel parameters (maxusersize, maxuprc, nfile and ninode) and after I tried to recompile the kernel with SAM I receve the following error:


Cannot build a kernel using /usr/sbin/config. The standard output of ^
the command is shown below:
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 119: error
1000: Unexpected symbol: "queue_t".
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 127: error
1000: Unexpected symbol: "mblk_t".
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 148: error
1000: Unexpected symbol: "mblk_t".
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 149: error
1000: Unexpected symbol: "mblk_t".
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 119: error
1573: Type of "pt_srq" is undefined due to an illegal declaration.
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 119: error
1578: Size of struct or union member is unknown.
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 127: error
1573: Type of "pt_qioctl" is undefined due to an illegal declaration.
(Bundled) cc: "/usr/conf/space.h.d/../strtio/pty.h", line 127: error
1578: Size of struct or union member is unknow


This modification works on other machine where I succed to recompile the new kernel.
I will attach config.SAM.mk for both machines:


First where recompile kernel did not work:


ROOT = /usr/conf/lib
LIBS = \
$(ROOT)/libufs.a \
$(ROOT)/libcdfs.a \
$(ROOT)/libhp-ux.a \
$(ROOT)/libdlkm.a \
$(ROOT)/liblan.a \
$(ROOT)/libfcgsc.a \
$(ROOT)/libfcms.a \
$(ROOT)/liblvm.a \
$(ROOT)/libstream.a \
$(ROOT)/libvclass.a \
$(ROOT)/libmaclan.a \
$(ROOT)/libautofs.a

#CAUTION: Do not modify below.
SMODWORK = mod_wk.d
SMODSTAT = /usr/conf/km.d
SYMTAB = dlkm.vmunix_test/symtab
MMASTER = /usr/conf/master.d
KMODS = \
$(SMODWORK)/swspBus/smod.o \
$(SMODWORK)/hsx/smod.o \
$(SMODWORK)/swsp/smod.o \
$(SMODWORK)/swspData/smod.o
KMODSTUBS =

CONF=conf.SAM
TUNE=tune
IDENT=-D__ROSE__ -D__ROSEVILLE__ -D_LVMROOT -D_LVM -DSTCP -DSPP_RUNWAY_ERR_ENABLED -DSPP_OBP_BOOT -DRDB -DPGPROF -DNEW_RDB -DNEW_MFCTL_W -DMULTICAST -DMP -DLWSYSCALL -DLP64_TMP_NODBG -DKI -DKGDB_ON -DIVT_INTERCEPT -DIPSEC -DINET_COSE -DHPONCPLUS -DFDDI_VM -DCONVERGED_IO -DCOMB_FLIPPER -DAUDIT -DAPPLETALK -DACLS
IDENT_TMP64=-D__TEMP64__
ROOT=/usr/conf/lib
IDENT_INT=-Dhp9000s800 -D__hp9000s800 -D__STDC_EXT__ -D__HIGHC__ -D_XPG4_EXTENDED -D_UNSUPPORTED -D_KERNEL_BUILD -D_HPUX_SOURCE
IDENT_KERN=-D_KERNEL -DKERNEL
UNDEF=-U__hp9000s700
DAFLAG=+DA2.0W
DSFLAG=+DS2.0
SPACED=space_LP64
MASTERD=master_LP64
MAPFILE=/usr/conf/gen/mapfile
COPTS=${IDENT} ${IDENT_TMP64} ${OPTIONS} ${UNDEF} ${IDENT_INT} ${IDENT_KERN}
OFLAGS=+XixdU +Uzm16

K_CCOPTS=-Wp,-H300000 $(OFLAGS) +Hx0 +R500 -Wl,-a,archive \
${DAFLAG} ${DSFLAG} +ESsfc +ESssf
K_CCOPTS_NOOPT=-Wp,-H300000 $(OFLAGS_NOOPT) +Hx0 +R500 -Wl,-a,archive \
${DAFLAG} ${DSFLAG} +ESsfc +ESssf

CFLAGS= -w ${COPTS} ${K_CCOPTS}
CFLAG2= +ES1.Xindirect_calls
HPUX= vmunix_test
LIBHPUX= $(ROOT)/libhp-ux.a
SPACE= /stand/build/space.h
SPACEDIR= /usr/conf/space.h.d
DIR=.
ORDER=/usr/conf/gen/linkorder
LOADOPTS= -noshared -P +nodefaultmap -k ${MAPFILE} -PF ${ORDER} +Accept \
TypeMismatch -e rdb_bootstrap -a archive
LIBK=
SPECVFLAGS= -L$(ROOT) ${LIBK}
LIBUSRDRV=`if [ -f $(ROOT)/libusrdrv.a ]; then \
echo $(ROOT)/libusrdrv.a; fi;`

# Default target

all: ${DIR}/${HPUX}

LOCORE=locore.o
DBGS= xport_diag.o wtermio.o wsio_scsi.o wsio_drivers.o vxfs.o virt_mem.o \
termio3.o termio2.o termio1.o termio0.o telnet.o strtio.o streams.o \
sio_drivers4.o sio_drivers3.o sio_drivers2.o sio_drivers1.o security.o \
proc_man.o pci_debug.o nfs.o netdiag.o multiproc.o lv_lvm.o low_level.o \
\
lan_dbg1.o lan_dbg0.o io.o file_sys.o fddi4_dbg.o fddi3_header.o fcms.o \
\
fc_gsc.o btlan3_dbg.o
OFILES=
SZLIMIT= -l 29308928

$(SPACE): $(SPACEDIR)
@- # FORCEBUILD=${FORCEBUILD}
-@$(RM) -f $@
$(MKDIR) -p $(@D)
@for file in `$(LS) $(SPACEDIR) | $(GREP) -E '^[^\.~#]+\.h$$'`; do \
echo "#include \"$(SPACEDIR)/$$file\"" >> $@ ; \
done



##
## HP-UX Kernel Makefile
##
# @(#) config.sys $Date: 1999/08/06 10:47:54 $Revision: r11ros/4 PATCH_11.00 (PHKL_19291)





# Set these to alternate path if we're running pre-10.0
BIN= /usr/bin
CKRN= /usr/ccs/bin
SBIN= /usr/sbin
SBINS= /usr/sbin

AWK= $(BIN)/awk
SHELL= /sbin/sh
SH= /sbin/sh
RM= $(BIN)/rm
CHMOD= $(BIN)/chmod
MKDIR= $(BIN)/mkdir
GREP= $(BIN)/grep
LS= $(BIN)/ls
AR= TMPDIR=/tmp $(CKRN)/ar
CC= $(CKRN)/cc
LD= $(CKRN)/ld
SZ= $(CKRN)/size
UTIL= /usr/conf/gen
MKFUNCNAMES=/usr/lbin/sw/bin/mkfuncnames
FUNCNAMES=/stand/build/function_names

KSYMTAB= $(SBINS)/kernsymtab
CHKMIF= $(SBINS)/kmckintfc

# An ordered list of all of the files used to link the kernel. Used in
# several places below.
LDFILES=$(LOCORE) $(CONF).o ${XOBJS} ${DBGS} \
$(OFILES) ${KMODS} ${KMODSTUBS} ${LIBUSRDRV} ${LIBS} ${LIBS} \
${SPECVFLAGS} ${FUNCNAMES}.o

# Debug kernels (-DOSDEBUG) produce symbolic stack traces as a debugging
# aid. Non-debug kernels produce purely numeric stack traces. They're
# not as convenient, but the memory overhead (~300KB) of storing the
# names of every kernel function is too high for the production kernel.
#
# To link the function names and addresses into the kernel we need a
# list of them. nm(1) can provide it, but to run nm we need the hp-ux
# file. (We can't use the libraries because not everything in them ends
# up in every kernel.) To get around this circular dependency we first
# link the kernel with a set of dummy name and address tables. Then we
# nm the hp-ux file we just built producing a new set of tables
# containing the real data and relink the kernel including the real data
# this time. (This data lives in ${FUNCNAMES}.[co].)
#
# NOTE: The space overhead of the function name and address tables, as
# well as the link-time overhead, is only paid by debug kernels.

${DIR}/${HPUX}: $(CONF).o $(LOCORE) ${DBGS} ${KMODS} ${KMODSTUBS} ${LIBS} ${MAPFILE}
@- # FORCEBUILD=${FORCEBUILD}
@${RM} -f $@ ${SYMTAB} ${FUNCNAMES}.[co]
@echo 'Loading the kernel...'
@{ \
echo '/* pro forma nameloader data structures */'; \
echo '/* (see h/nameloader.h and sys/nameloader.c) */'; \
echo 'void *builtin_function_addresses[] = { 0 };'; \
echo 'void **function_addresses = &builtin_function_addresses;'; \
echo 'char *builtin_function_names[] = { 0 };'; \
echo 'void **function_names = &builtin_function_names;'; \
echo 'int builtin_function_count = 0;'; \
echo 'int function_count = 0;'; \
echo 'int functions_compiled_in = 0;'; \
echo 'char linkstamp[] = "'`(LC_ALL=C;date)`'";'; \
} > ${FUNCNAMES}.c
@${CC} -I. ${CFLAG2} -c -o ${FUNCNAMES}.o \
${CFLAGS} ${NOGLOOPTS} ${FUNCNAMES}.c
@$(SH) -c '${LD} -o ${DIR}/${HPUX} ${LOADOPTS} ${LDFILES} ; \
echo LdReT $$?' 2>&1 | \
$(AWK) '/LdReT/ { exit $$2 } \
!/(1594)|Can not optimize ADDILs/ { print }'
@case '${CFLAGS}' in \
*-DOSDEBUG*) \
if [ -x ${MKFUNCNAMES} ]; \
then \
${MKFUNCNAMES} ${DIR}/${HPUX} > ${FUNCNAMES}.c; \
${CC} -I. ${CFLAG2} -c -o ${FUNCNAMES}.o \
${CFLAGS} ${NOGLOOPTS} ${FUNCNAMES}.c; \
${LD} -o $@ ${LOADOPTS} ${LDFILES}; \
fi; \
;; \
esac
@echo "Generating kernel symbol table..."
@${KSYMTAB} ${DIR}/${HPUX} ${SYMTAB}
@$(CHMOD) 755 ${DIR}/${HPUX}
@${RM} -f $(LOCORE) ${DBGS} ${KMODS}

$(CONF).o: $(CONF).c $(SPACE)
@- # FORCEBUILD=${FORCEBUILD}
@echo 'Compiling $(CONF).c...'
@${RM} -f $(CONF).o
@${CC} -I. \
${CFLAG2} -c -o $(CONF).o ${CFLAGS} ${NOGLOOPTS} $(CONF).c


$(LOCORE) ${DBGS}:
@- # FORCEBUILD=${FORCEBUILD}
@${RM} -f $(LOCORE) ${DBGS}
@${AR} x ${LIBHPUX} $(LOCORE) ${DBGS}

#CAUTION: DLKM related targets. Do not modify below.
$(SMODWORK)/swspBus/smod.o: $(SMODWORK)/swspBus/_mod.o
@${CHKMIF} $(MMASTER)/swspBus $(SMODWORK)/swspBus/_mod.o $@
@${RM} -f $(SMODWORK)/swspBus/_mod.o
$(SMODWORK)/swspBus/_mod.o: $(SMODSTAT)/swspBus/mod.o $(SMODWORK)/swspBus/mod_conf.o
@echo Generating module: swspBus...
@${LD} -r $(SMODSTAT)/swspBus/mod.o $(SMODWORK)/swspBus/mod_conf.o -o $@
@${RM} -f $(SMODWORK)/swspBus/mod_conf.o
$(SMODWORK)/swspBus/mod_conf.o: $(SMODWORK)/swspBus/mod_conf.c
@${CC} -I. ${CFLAG2} ${CFLAGS} -c $(SMODWORK)/swspBus/mod_conf.c -o $@

$(SMODWORK)/hsx/smod.o: $(SMODWORK)/hsx/_mod.o
@${CHKMIF} $(MMASTER)/hsx $(SMODWORK)/hsx/_mod.o $@
@${RM} -f $(SMODWORK)/hsx/_mod.o
$(SMODWORK)/hsx/_mod.o: $(SMODSTAT)/hsx/mod.o $(SMODWORK)/hsx/mod_conf.o
@echo Generating module: hsx...
@${LD} -r $(SMODSTAT)/hsx/mod.o $(SMODWORK)/hsx/mod_conf.o -o $@
@${RM} -f $(SMODWORK)/hsx/mod_conf.o
$(SMODWORK)/hsx/mod_conf.o: $(SMODWORK)/hsx/mod_conf.c
@${CC} -I. ${CFLAG2} ${CFLAGS} -c $(SMODWORK)/hsx/mod_conf.c -o $@

$(SMODWORK)/swsp/smod.o: $(SMODWORK)/swsp/_mod.o
@${CHKMIF} $(MMASTER)/swsp $(SMODWORK)/swsp/_mod.o $@
@${RM} -f $(SMODWORK)/swsp/_mod.o
$(SMODWORK)/swsp/_mod.o: $(SMODSTAT)/swsp/mod.o $(SMODWORK)/swsp/mod_conf.o
@echo Generating module: swsp...
@${LD} -r $(SMODSTAT)/swsp/mod.o $(SMODWORK)/swsp/mod_conf.o -o $@
@${RM} -f $(SMODWORK)/swsp/mod_conf.o
$(SMODWORK)/swsp/mod_conf.o: $(SMODWORK)/swsp/mod_conf.c
@${CC} -I. ${CFLAG2} ${CFLAGS} -c $(SMODWORK)/swsp/mod_conf.c -o $@

$(SMODWORK)/swspData/smod.o: $(SMODWORK)/swspData/_mod.o
@${CHKMIF} $(MMASTER)/swspData $(SMODWORK)/swspData/_mod.o $@
@${RM} -f $(SMODWORK)/swspData/_mod.o
$(SMODWORK)/swspData/_mod.o: $(SMODSTAT)/swspData/mod.o $(SMODWORK)/swspData/mod_conf.o
@echo Generating module: swspData...
@${LD} -r $(SMODSTAT)/swspData/mod.o $(SMODWORK)/swspData/mod_conf.o -o $@
@${RM} -f $(SMODWORK)/swspData/mod_conf.o
$(SMODWORK)/swspData/mod_conf.o: $(SMODWORK)/swspData/mod_conf.c
@${CC} -I. ${CFLAG2} ${CFLAGS} -c $(SMODWORK)/swspData/mod_conf.c -o $@



Second machine where recompile worked:

ROOT = /usr/conf/lib
LIBS = \
$(ROOT)/libuipc.a \
$(ROOT)/libufs.a \
$(ROOT)/libnfs.a \
$(ROOT)/libcdfs.a \
$(ROOT)/libpci.a \
$(ROOT)/libhp-ux.a \
$(ROOT)/libdlkm.a \
$(ROOT)/librpc.a \
$(ROOT)/liblan.a \
$(ROOT)/libinet.a \
$(ROOT)/libnet.a \
$(ROOT)/libtun.a \
$(ROOT)/libipsec.a \
$(ROOT)/libtelnet.a \
$(ROOT)/libnms.a \
$(ROOT)/libbtlan6.a \
$(ROOT)/btlan6_newdbg.o \
$(ROOT)/libfcgsc.a \
$(ROOT)/libfcms.a \
$(ROOT)/libvxfs_base.a \
$(ROOT)/liblvm.a \
$(ROOT)/libstream.a \
$(ROOT)/libstrtio.a \
$(ROOT)/libbtlan5.a \
$(ROOT)/btlan5_dbg.o \
$(ROOT)/libcifs.a \
$(ROOT)/libtd.a \
$(ROOT)/td_debug.o \
$(ROOT)/libigelan.a \
$(ROOT)/libvclass.a \
$(ROOT)/libbtlan3.a \
$(ROOT)/btlan3_dbg.o \
$(ROOT)/libmaclan.a \
$(ROOT)/libautofs.a

#CAUTION: Do not modify below.
SMODWORK = mod_wk.d
SMODSTAT = /usr/conf/km.d
SYMTAB = dlkm.vmunix_test/symtab
MMASTER = /usr/conf/master.d
KMODS = \
$(SMODWORK)/swspBus/smod.o \
$(SMODWORK)/hsx/smod.o \
$(SMODWORK)/swsp/smod.o \
$(SMODWORK)/swspData/smod.o
KMODSTUBS =

CONF=conf.SAM
TUNE=tune
IDENT=-D__ROSE__ -D__ROSEVILLE__ -D_LVMROOT -D_LVM -DSTCP -DSPP_RUNWAY_ERR_ENABLED -DSPP_OBP_BOOT -DRDB -DPGPROF -DNEW_RDB -DNEW_MFCTL_W -DMULTICAST -DMP -DLWSYSCALL -DLP64_TMP_NODBG -DKI -DKGDB_ON -DIVT_INTERCEPT -DIPSEC -DINET_COSE -DHPONCPLUS -DFDDI_VM -DCONVERGED_IO -DCOMB_FLIPPER -DAUDIT -DAPPLETALK -DACLS
IDENT_TMP64=-D__TEMP64__
ROOT=/usr/conf/lib
IDENT_INT=-Dhp9000s800 -D__hp9000s800 -D__STDC_EXT__ -D__HIGHC__ -D_XPG4_EXTENDED -D_UNSUPPORTED -D_KERNEL_BUILD -D_HPUX_SOURCE
IDENT_KERN=-D_KERNEL -DKERNEL
UNDEF=-U__hp9000s700
DAFLAG=+DA2.0W
DSFLAG=+DS2.0
SPACED=space_LP64
MASTERD=master_LP64
MAPFILE=/usr/conf/gen/mapfile
COPTS=${IDENT} ${IDENT_TMP64} ${OPTIONS} ${UNDEF} ${IDENT_INT} ${IDENT_KERN}
OFLAGS=+XixdU +Uzm16

K_CCOPTS=-Wp,-H300000 $(OFLAGS) +Hx0 +R500 -Wl,-a,archive \
${DAFLAG} ${DSFLAG} +ESsfc +ESssf
K_CCOPTS_NOOPT=-Wp,-H300000 $(OFLAGS_NOOPT) +Hx0 +R500 -Wl,-a,archive \
${DAFLAG} ${DSFLAG} +ESsfc +ESssf

CFLAGS= -w ${COPTS} ${K_CCOPTS}
CFLAG2= +ES1.Xindirect_calls
HPUX= vmunix_test
LIBHPUX= $(ROOT)/libhp-ux.a
SPACE= /stand/build/space.h
SPACEDIR= /usr/conf/space.h.d
DIR=.
ORDER=/usr/conf/gen/linkorder
LOADOPTS= -noshared -P +nodefaultmap -k ${MAPFILE} -PF ${ORDER} +Accept \
TypeMismatch -e rdb_bootstrap -a archive
LIBK=
SPECVFLAGS= -L$(ROOT) ${LIBK}
LIBUSRDRV=`if [ -f $(ROOT)/libusrdrv.a ]; then \
echo $(ROOT)/libusrdrv.a; fi;`

# Default target

all: ${DIR}/${HPUX}

LOCORE=locore.o
DBGS= xport_diag.o wtermio.o wsio_scsi.o wsio_drivers.o vxfs.o virt_mem.o \
termio3.o termio2.o termio1.o termio0.o telnet.o strtio.o streams.o \
sio_drivers4.o sio_drivers3.o sio_drivers2.o sio_drivers1.o security.o \
proc_man.o pci_debug.o nfs.o netdiag.o multiproc.o lv_lvm.o low_level.o \
\
lan_dbg1.o lan_dbg0.o io.o file_sys.o fddi4_dbg.o fddi3_header.o fcms.o \
\
fc_gsc.o btlan3_dbg.o
OFILES=
SZLIMIT= -l 29308928

$(SPACE): $(SPACEDIR)
@- # FORCEBUILD=${FORCEBUILD}
-@$(RM) -f $@
$(MKDIR) -p $(@D)
@for file in `$(LS) $(SPACEDIR) | $(GREP) -E '^[^\.~#]+\.h$$'`; do \
echo "#include \"$(SPACEDIR)/$$file\"" >> $@ ; \
done



##
## HP-UX Kernel Makefile
##
# @(#) config.sys $Date: 1999/08/06 10:47:54 $Revision: r11ros/4 PATCH_11.00 (PHKL_19291)





# Set these to alternate path if we're running pre-10.0
BIN= /usr/bin
CKRN= /usr/ccs/bin
SBIN= /usr/sbin
SBINS= /usr/sbin

AWK= $(BIN)/awk
SHELL= /sbin/sh
SH= /sbin/sh
RM= $(BIN)/rm
CHMOD= $(BIN)/chmod
MKDIR= $(BIN)/mkdir
GREP= $(BIN)/grep
LS= $(BIN)/ls
AR= TMPDIR=/tmp $(CKRN)/ar
CC= $(CKRN)/cc
LD= $(CKRN)/ld
SZ= $(CKRN)/size
UTIL= /usr/conf/gen
MKFUNCNAMES=/usr/lbin/sw/bin/mkfuncnames
FUNCNAMES=/stand/build/function_names

KSYMTAB= $(SBINS)/kernsymtab
CHKMIF= $(SBINS)/kmckintfc

# An ordered list of all of the files used to link the kernel. Used in
# several places below.
LDFILES=$(LOCORE) $(CONF).o ${XOBJS} ${DBGS} \
$(OFILES) ${KMODS} ${KMODSTUBS} ${LIBUSRDRV} ${LIBS} ${LIBS} \
${SPECVFLAGS} ${FUNCNAMES}.o

# Debug kernels (-DOSDEBUG) produce symbolic stack traces as a debugging
# aid. Non-debug kernels produce purely numeric stack traces. They're
# not as convenient, but the memory overhead (~300KB) of storing the
# names of every kernel function is too high for the production kernel.
#
# To link the function names and addresses into the kernel we need a
# list of them. nm(1) can provide it, but to run nm we need the hp-ux
# file. (We can't use the libraries because not everything in them ends
# up in every kernel.) To get around this circular dependency we first
# link the kernel with a set of dummy name and address tables. Then we
# nm the hp-ux file we just built producing a new set of tables
# containing the real data and relink the kernel including the real data
# this time. (This data lives in ${FUNCNAMES}.[co].)
#
# NOTE: The space overhead of the function name and address tables, as
# well ...