[erlang-questions] Cross building Erlang as a lib for running on a embedded real time executive

Peer Stritzinger peerst@REDACTED
Wed Feb 15 16:22:35 CET 2012


I'm in the process of creating a Erlang port for the RTEMS realtime
system (www.rtems.org).

RTEMS is a real time executive meaning there are no Unix like
processes but only threads.

Currently I have succeeded cross building until it wants to link the
beam.smp executable which aborts with a error about missing dl*
reference (different story since there is no dynamic linking on RTEMS
this has to go probably).

What I want to do here is not linking a beam executable but rather a
libbeam.a that I could link to the RTEMS executable and initialize

* What is the best way to cross-build a lib without a main() function?

* Am I right building the smp variant even if I don't intend to use
smp?  I want to use threads from NIF's however.

The results of this work BTW will be submitted back or provided as BSD
licensed add on if necessary.  I think this will be pretty useful for
Erlang use on that need some hard-realtime and hardware access (where
RTEMS is very good at) combining this with the flexibility and
soft-realtime features of Erlang (which will be even more responsive
since it can be run basically on the bare hardware without OS
preemption (except for hard-realtime things which will probably run at
a higher priority that the beam thread).

-- Peer

More information about the erlang-questions mailing list