[erlang-questions] HiPE on ARM Build Issue

Jon Watte <>
Fri Apr 20 04:09:19 CEST 2012


Maybe you can find a used Android cell phone somewhere? They typically have
256 MB RAM and as much "disk" as you can put on an MicroSD card.

Or, for $35, the Raspberry Pi would be a nice little target. Linux, ARM,
networking, desktop!




Sincerely,

Jon Watte


--
"I pledge allegiance to the flag of the United States of America, and to
the republic for which it stands, one nation indivisible, with liberty and
justice for all."
~ Adopted by U.S. Congress, June 22, 1942



On Sat, Apr 14, 2012 at 1:12 AM, Kostis Sagonas <> wrote:

> On 04/14/2012 09:24 AM, Andrew Wiley wrote:
>
>> On Sat, Apr 14, 2012 at 12:43 AM, Andrew Wiley <
>> <mailto:**com <>>> wrote:
>>
>>    Hello,
>>
>>    I'm trying to get Erlang with HiPE to build on an ARMv7 box (a
>>    Trimslice - http://trimslice.com/ <http://trimslice.com/web/> ), and
>>
>>    I'm getting an undefined reference to am_arm. I'm building R15B01,
>>    and the build commands I'm using are:
>>    ./otp_build autoconf
>>    ./configure --enable-native-libs --enable-hipe
>>
>>    --prefix=/usr --enable-smp-support --enable-threads
>>    ./otp_build boot
>>
>>    The build failure looks like this:
>>    ...
>>
>>
>>    It looks like am_x86 is declared in
>>    erts/emulator/armv7l-unknown-**linux-gnu/erl_atom_table.h; should
>>    am_arm be in there as well?
>>    I'm not sure what else would be helpful to diagnose this, but here's
>>    `uname -a`:
>>    Linux tseng 3.2.1-1-ARCH #1 SMP PREEMPT Sun Jan 22 06:37:13 UTC 2012
>>    armv7l ARMv7 Processor rev 0 (v7l) trimslice GNU/Linux
>>
>> Just saw
>> http://erlang.org/pipermail/**erlang-bugs/2006-December/**000268.html<http://erlang.org/pipermail/erlang-bugs/2006-December/000268.html>and it
>> looks like I'm having the same issue. Are there any plans to try to fix
>> configure.in <http://configure.in> so that ARM builds like this either
>>
>> work or produce an error?
>>
>
> In the HiPE team we would very much like to support the ARM architecture
> but the problem these days - for quite some time actually - is that we do
> not have access to any machine with an ARM processor. It's very painful to
> be testing ARM using QEMU, esp. all sorts of different ARMs that exist
> these days. Hence, occasionally code tends to rot or, as in this case which
> involves a newer ARMv7, code has never been tested on newer architectures.
>
> (I do not know what sort of access to ARM machines the Erlang/OTP team at
> Ericsson has, but I suspect that they do not have access to all possible
> ARMs either.)
>
> In this particular case, I would recommend that you extend the following
> lines in erts/configure.in
>
>    armv5b)     ARCH=arm;;
>    armv5teb)   ARCH=arm;;
>    armv5tel)   ARCH=arm;;
>
> with the line that corresponds to your newer armv7 and test to see what
> happens.  If all goes well, please submit a patch using git.
>
> Also, since you are on an unexplored territory, I would recommend to build
> Erlang/OTP in two steps. First do:
>
>        ./configure --enable-hipe ...
>
> which will test if Erlang/OTP can be built with HiPE support, and only if
> that works do:
>
>        make clean  // or start from a fresh copy, for extra safety
>        ./configure --enable-hipe ... --enable-native-libs
>
> which will additionally test that the HiPE compiler generates correct
> native code and is able to self-compile itself (as well as many of the
> Erlang/OTP libraries: currently kernel, stdlib, compiler, syntax_tools,
> hipe, dialyzer, and typer).
>
> In any case, please report your findings here.
>
> Kostis
>
> PS. We welcome support, for example, donations of ARM-based machines that
> we can be using to test the HiPE compiler or its newer LLVM-based back-end
> (see http://erllvm.softlab.ntua.gr/**) more regularly. Similar with other
> exotic architectures that people these days care about. Minimally, if you
> want native code for some configuration other than x86 and x86_64-based
> machines, give us some form of remote access to it.
> ______________________________**_________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/**listinfo/erlang-questions<http://erlang.org/mailman/listinfo/erlang-questions>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20120419/7b6316e5/attachment.html>


More information about the erlang-questions mailing list