Linux 简单的Erlang示例赢得';t运行(错误)
各位下午好 我最近对Erlang和函数式编程产生了兴趣。我试图在不打开Erlang shell的情况下运行这个简单的hello world示例。我能够在MACOSX(约塞米蒂)上成功运行它,但我想改用我的Fedora20VM。因此,在Fedora(Linux)(甚至Windows 7)中,我在尝试运行编译后的beam时出现以下错误:Linux 简单的Erlang示例赢得';t运行(错误),linux,functional-programming,erlang,Linux,Functional Programming,Erlang,各位下午好 我最近对Erlang和函数式编程产生了兴趣。我试图在不打开Erlang shell的情况下运行这个简单的hello world示例。我能够在MACOSX(约塞米蒂)上成功运行它,但我想改用我的Fedora20VM。因此,在Fedora(Linux)(甚至Windows 7)中,我在尝试运行编译后的beam时出现以下错误: {"init terminating in do_boot",{undef,[{heythere,start,[],[]},{init,start_it,1,[]}
{"init terminating in do_boot",{undef,[{heythere,start,[],[]},{init,start_it,1,[]},{init,start_em,1,[]}]}}
Crash dump was written to: erl_crash.dump
init terminating in do_boot ()
以下是我用来运行文件的开关:
erl -noshell -start -s heythere -init -stop
我甚至替换了“-s”开关,使用“-run”也没用。我可以在shell内部运行模块,但不能在shell外部运行。我做错什么了吗
代码:
我试着在erl_crash.dump中查找,但它有1000多行,我无法理解它的头尾-(
非常感谢大家。在
-s
标志中,您指定了一个模块heythere
,但没有要使用的函数。erl
默认使用start
作为函数,但您没有在模块中指定start
函数,因此erl
不知道如何运行您的程序。-s
标志,您指定了一个模块heythere
,但没有要使用的函数。erl
默认使用start
作为函数,但您没有在模块中指定start
函数,因此erl
不知道如何运行您的程序。在-s
标志中,您指定了一个moduleheythere
,但没有要使用的函数。erl
默认使用start
作为函数,但您没有在模块中指定start
函数,因此erl
不知道如何运行您的程序。在-s
标志中,您指定了一个模块heythere
,但没有要使用的函数使用。erl
默认使用start
作为函数,但您没有在模块中指定start
函数,因此erl
不知道如何运行您的程序。非常感谢mipadi!这很有效!难怪我的示例只在MACOSX上运行。因为它有一个start函数,而最近的示例没有t!你太好了。:-)非常感谢你,米帕迪!成功了!难怪我的例子只在MACOSX上有效。因为它有一个start函数,而最近的这个例子没有!你真是太好了。:-)非常感谢米帕迪!成功了!难怪我的例子只在MACOSX上有效。因为它有一个start函数,而最近的这个例子没有!你真是太好了。:-)非常感谢米帕迪!成功了!难怪我的例子只在MACOSX上有效。因为它有一个start函数,而最近的这个例子没有!你真是太好了。:-)
-module(heythere).
-export([hello_world/0, this_function/0, both/0]).
hello_world() ->
io:fwrite("hello, world\n").
this_function() ->
io:fwrite("This is another function...ok~n").
both() ->
hello_world(),
this_function().