delorie.com/archives/browse.cgi | search |
Xref: | news2.mv.net comp.os.msdos.djgpp:6815 |
From: | avh AT tornado DOT be (alain.vanhentenryck) |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Please help needed for huge vectors |
Date: | Fri, 02 Aug 1996 18:49:47 GMT |
Organization: | Tornado News Processing System |
Lines: | 51 |
Message-ID: | <4tvd8d$daq@tornix.tornado.be> |
NNTP-Posting-Host: | port3.aarschot.tornado.be |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Please is it possible to help me with submentioned program ? I checked the FAQ200 and the online help with no results, maybe overlooking something. All is going well at compile time : gcc -c -Wall -O2 err.c But goes wrong at link time : gcc -o err.exe err.o -lm err.o : could not read symbols : Bad value When decreasing MAXLONG to 4194303 the linker accepted my program. 4194304 also seems a magic number : 4194304 = 2**22 4194304 * 4 = 2**24 and I suspect the linker not being able to handle vectors with a size greater than 2**24 bytes. I solved my problem with the non elegant way to declare several vectors. Is there another way to handle an huge array, I really need it ? Please help. I am using an i80486 66MHz with 8Mbytes RAM and 325Mbytes free on the hard disk, DJGPP V2, gcc version 2.7.2 and CWSDPMI release 1 loaded with the -p switch and running windows95 restarted in dos mode. The offending program err.c : #define MAXLONG 4194304 int v[MAXLONG]; int i; void main() { for(i=0;i<MAXLONG;i++) {v[i]=i;} } Thanks in advance. Alain Van hentenryck. avh AT tornado DOT be
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |