[erlang-questions] Problems cross compiling: eheap_alloc: Cannot reallocate 3480006320 bytes of memory

Winston Smith <>
Tue Feb 9 00:17:08 CET 2010

On Mon, Feb 8, 2010 at 9:55 AM, Rickard Green <> wrote:
> The fix is now available in the ccase/r13b04_dev branch at github. If the
> fix doesn't solve your problem, please send me the $ERL_TOP/erts/config.log
> file and the complete printout (stdout) from your configure run.

It works well now, thank you.  I did see an error about missing
headers (sorry, I don't have the exact message), but that could've
been because I have done previous builds with the old mechanism.  It
did seem to go away after I ran:

    ./otp_build autoconf --xcomp-conf=<my_xcomp_file>

I don't know if this fixed it or not; it's no longer mentioned in the
xcomp/README.  Is there an easy way to reset my git working directory
to remove any previous autoconf/configure junk (aside from doing a
clean clone of the repo)?

> Some changes has been made in xcomp/README, so it might be worth having a
> look at the diff.

I updated my .conf file based on the updated examples you have there,
it looks much more straightforward now.

I did notice a couple of things in the xcomp/README.  Firstly, you now
describe the two ways of building, using configure or using otp_build
-- it wasn't immediately obvious what the differences and why I'd use
one vs the other until I'd read in more detail.  Secondly, you have a
typo on line 225; you say the command line for otp_build configure has
--with-xcomp-conf= when it's really just --xcomp-conf=.  Also, the
script doesn't seem to expand a ~ in the filename, not a big deal

> The bug was that configure checked for large file support
> using `getconf' for the build machine. This can cause 8 byte off_t for the
> target machine when 4 byte off_t should be used. The fix tries to figure out
> how to enable large file support using a `getconf' for the target machine
> (or by user input). That is, if you get an 8 byte off_t it isn't necessarily
> wrong. It then probably succeeded in figuring out how to enable large file
> support.

This is fixed (at least for avr32-linux), it correctly detected the
size of off_t as 4.

Many thanks!

More information about the erlang-questions mailing list