Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!udel!mmdf From: Glen Lalonde Newsgroups: comp.os.minix Subject: GCC and MacMinix. Message-ID: <49448@nigel.ee.udel.edu> Date: 1 Apr 91 13:15:43 GMT Sender: mmdf@ee.udel.edu Lines: 28 I now have a working gcc compiled fs and mm, done without any kludges this time. The basic problem with using gcc to compile fs and mm is the size of the text and data section both must be a multiple of 256. I could find no gcc-ld option to force this. After attempting about five different hacks, including altering the kernel I have come up with a decent method around the problem. Compile fs and mm with gcc, do a size on them. Note how far the text and data sections are from a multiple of 256, alter end.s to have .fill amountOff,1,0 then re bind. Thus you get a text and data section that are padded. This works and requires no kernel hacks. You will need to change head.s for mm to bind, since it has a special routine in it that does not come with the standard gcc head.s My gcc MacMinix has been working for a few day with no problem. Next ...the kernel.. A quick test showed cat file > /dev/null going 15% faster. Sorry about bashing c68, I had just finished debugging my problem with it when I posted my message about the bug. MacMinix for now only supports 24bit addressing, so forget about using system 7 to get 20MB. See kernel/cstart.c and main.c O yes, ps breaks with gcc fs and mm. gcc-ld pads identifiers with blanks! Thus ps can't find _fproc You will need to alter nlist.c to fix this, it is about a 10 line change and I have a nlist that will now work for gcc and non-gcc compiled programs. Want it posted?