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

Rickard Green <>
Tue Feb 9 11:39:19 CET 2010


Winston Smith wrote:
> 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.

Great!

>  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.

I'm a bit surprised by the missing header message, but since it went 
away after running `./otp_build autoconf' it was probably due to a 
misconfiguration. If it should appear again please send us info about that.

`./otp_build autoconf' (no need for --xcomp-conf here) regenerates all 
configure scripts and is needed in git when a configure.in or aclocal.m4 
have changed. `./otp_build autoconf' is not mentioned since it is not 
needed in the source tar released. However, we probably should mention 
it since there are a lot of people building in git.

>  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)?
>

`git clean -dfx' should clean up the whole source tree. Note that I 
haven't used it myself (I'm still mostly working in clearcase), so 
please read the man page before using it.

>> 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
> though.

Thanks, I'll fix the typo, the tilde expansion, and clarify the 
difference between otp_build and configure/make a bit.

> 
>> 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.

Great!

> 
> Many thanks!
> 

Regards,
Rickard
-- 
Rickard Green, Erlang/OTP, Ericsson AB.


More information about the erlang-questions mailing list