Erlang模块编译

时间:2015-12-12 22:25:02

标签: erlang

我开始学习Erlang,在读完第一章后,在编译模块时遇到了奇怪的错误。

所以当我尝试编译demo.erl

-module(demo).
-author("alex").

-export([double/1]).

double(Value) ->
   Value * 2.

所以我尝试编译它

1> m(demo).

得到了

** exception error: undefined function demo:module_info/0

编译的唯一方法是

make:files(filelib:wildcard("demo.erl")).

我得到了demo.beam,现在甚至在删除它之后(演示)。开始工作。

任何人都可以向我解释编译器的行为吗?

1 个答案:

答案 0 :(得分:5)

要从Erlang shell编译模块,请使用c命令:

1> c(demo).
{ok,demo}

shell m命令用于检索有关已编译模块的信息:

2> m(demo).
Module: demo
MD5: 422cee9099e136c6dec13dd200927c63
Compiled: December 12 2015, 22:51
Object file: /tmp/demo.beam
Compiler options:  []
Exports:
         double/1
         module_info/0
         module_info/1
ok