Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!rutgers!mit-eddie!killer!vector!chip From: chip@vector.UUCP (Chip Rosenthal) Newsgroups: comp.unix.xenix Subject: Re: "too big" error message under Xenix Message-ID: <609@vector.UUCP> Date: 26 Oct 88 19:46:41 GMT References: <3700006@eecs.nwu.edu> Reply-To: chip@vector.UUCP (Chip Rosenthal) Organization: Dallas Semiconductor Lines: 19 In article <3700006@eecs.nwu.edu> skrenta@eecs.nwu.edu (Richard Skrenta) writes: >I try to run it, however, it says "mg: too big". >Does anyone know what "too big" refers to here? Yeah...your initialized data/stack segment is greater than 64K. Well, you might ask, why does the compiler allow such a thing to be created? The reason is that XENIX 286 uses a fixed stack which is allocated at run time. It is only at this time that it can see that the thing won't shoehorn into memory. The answer is obvious: decrease your stack size or decrease the amount of static data in this segment. The former may be done with the fixhdr(C) command, which allows you to specify a stack size. The latter may be done by compiling with the -Mt flag. For example, -Mt32 says any data items larger than 32 bytes should be moved into another segment. Of course, you must be using either the large or the huge memory model to do this. -- Chip Rosenthal chip@vector.UUCP | I've been a wizard since my childhood. Dallas Semiconductor 214-450-0486 | And I've earned some respect for my art.