Hi Bent Lee,
you asked for help
I need help with the V6 kernel compilation. I read the Unix setup guide
and the
file /usr/sys/run. I've seen one problem so far with the /usr/sys/run
file. That is
that the two lib files (lib1 & lib2) did not contain any symbols.
When I ran:
# ar r ../lib1
and
# ar r ../lib2
I got a string of error messages from ld.
which error messages?
But after I did this:
# ar r ../lib1 *.o
and
# ar r ../lib2 *.o
This might have corrupted your lib files. These two lines are only meant as
templates to replace some files in your archives, that is lib[12], if necessary.
But replacing an object file is necessary only if you changed the corresponding
source file and recompiled it.
Here are the files supposed to be in lib1:
# ar t lib1
main.o
alloc.o
iget.o
prf.o
rdwri.o
slp.o
subr.o
text.o
trap.o
sig.o
sysent.o
clock.o
fio.o
malloc.o
nami.o
pipe.o
sys1.o
sys2.o
sys3.o
sys4.o
I have these missing symbols
# ld -x l.o m40.o c.o ../lib1 ../lib2
Undefined:
_end (defined by ld if successful)
_edata (same)
_iinit (from alloc.c)
_iget (from iget.c)
replace lib1 and lib2 with the original files and it should work!
You might want to consult
http://www.ba-stuttgart.de/~helbig/os/script/chapt1.1
for help installing V6.
Regards,
Wolfgang
--
"Dijkstra is right, but you don't say such things!"
(A less courageous programmer)