This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: large memory allocation via new causes segmentation fault in G++ compiled programs


I've raised the same problem some time ago on the list. I haven't
seen any answer on the list, but I've found a way to solve it. By the
way, I'm still interested in other people explanations !

Here's my answer, hope it helps !

>>I'm using cygwin & gcc on a 512 Mb PC running NT, and
>>it seems that I cannot allocate more than (roughly)
>>128 MegaBytes of total memory (either with a single 
>>malloc call, or with lots of them). Is there's a memory 
>>allocation limit in cygwin & gcc or am I missing something ? 
>>(the same program works fine with Watcom C, and I'm using
>>cygwin latest release)
>>Thanks in advance if anyone can help !
>Hi again,
>I can't fully answer my question, but I've found a way to malloc
>more than 128 Mb. I've read than cygwin uses Doug Lea's malloc
>(, and I've compiled 
>it and linked it with my programs, and then, it works. 
>For instance, the following program fails if compiled with gcc, 
>and works when linked with Doug Lea's malloc.
>#include <stdlib.h>
>#include <assert.h>
>int main(void)
>	void	*p = malloc(128 * 1024 * 1024);
>	assert(p);
>	return 0;
>Using that other malloc solves my problem, but I'd still like to
>know if it's something wrong with my system or a problem with gcc.

Want to unsubscribe from this list?
Send a message to

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]