使用erl.exe编译Erlang模块

时间:2013-04-15 20:36:37

标签: compilation erlang erlang-shell

我是Erlang的新手,我正在尝试编译我的第一个Erlang模块,并且收到一个错误,即没有这样的文件存在,尽管它确实存在。

非常感谢任何有关我erl.exe无法编译useless.erl的建议。

非常感谢提前!

erl.exe命令提示符(注意模块确实包含useless.erl)

1> filename:absname("C:/Users/modules"). 
"C:/Users/modules"
2> c(useless). 
useless.erl:none: no such file or directory

(useless.erl)

-module(useless).
-export([add/2, hello/0, greet_and_add_two/1]).

add(A,B) ->
A + B.

%% Shows greetings.
%% io:format/1 is the standard function used to output text.
hello() ->
io:format("Hello, world!~n").

greet_and_add_two(X) ->
hello(),
add(X,2).

1 个答案:

答案 0 :(得分:3)

使用该表单,您需要执行erl与您尝试编译的模块相同的目录。您可以在使用c函数时指定文件路径。这将在当前目录中创建一个.beam文件:

Erlang R16B (erts-5.10.1) [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

Eshell V5.10.1  (abort with ^G)
1> c("stackoverflow/passfun.erl").
{ok,passfun}
2> passfun:some_func().
hello