Hi, Pete:
Thank you very much for your help.
After several tries, I realized that you are right. My MMU may have
problem.
Because my mips CPU is not the standard one and I do not have a R3000
application
program such as "date", "arch", or "init", I built an application as
following.
liu.c is:
void main(void)
{
}
Makefile is:
ARCH = mips
.EXPORT_ALL_VARIABLES:
CROSS_COMPILE =mips-linux-
AS =$(CROSS_COMPILE)as
LD =$(CROSS_COMPILE)ld
CC =$(CROSS_COMPILE)gcc -D__mips__
CPP =$(CC) -E
AR =$(CROSS_COMPILE)ar
NM =$(CROSS_COMPILE)nm
STRIP =$(CROSS_COMPILE)strip
OBJCOPY =$(CROSS_COMPILE)objcopy
OBJDUMP =$(CROSS_COMPILE)objdump
MAKE =make
GENKSYMS=/sbin/genksyms
CFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -mips1
-mcpu=r3000 -mmemcpy
CFLAGS += $(shell if $(CC) -fno-strict-aliasing -S -o /dev/null -xc
/dev/null >/dev/null 2>&1; then echo "-fno-strict-aliasing"; fi)
# egcs-1.0.2 compiler for MIPS has a problem for which this is a
work-around
CFLAGS += $(shell if $(CC) -mno-split-addresses -S -o /dev/null -xc
/dev/null >/dev/null 2>&1; then echo "-mno-split-addresses"; fi)
.S.s:
$(CC) -D__ASSEMBLY__ -traditional -E -o $*.s $<
.S.o:
$(CC) -D__ASSEMBLY__ -traditional -c -o $*.o $<
liu: $(CONFIGURATION) liu.o
$(LD) $(LINKFLAGS) $(HEAD) liu.o \
-o liu
$(NM) liu | grep -v '\(compiled\)\|\(\.o$$\)\|\( [aU]
\)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | sort > System.map
liu.o: liu.c
$(CC) $(CFLAGS) $(PROFILING) -c -o $*.o $<
When I ran the program, it crushed.
Could you build this application and run it on your R3000 system? If it
works, send me your executable so that I can test my system.