在Windows上编译Erlang代码

Nia*_*all 11 windows installation erlang compilation

我安装了Erlang 13B并尝试按照教程进行操作.

每次我到达时c(tut),我都会收到错误(ok, tut),因此似乎没有安装任何模块.谁能指出我正确的方向?

我已经尝试过Emacs,但我真的不知道如何使用它,甚至没有接近让Erlang模式工作.例如,我在哪里输入:

  (setq load-path (cons  "C:/Program Files/erl5.6.2/lib/tools-<ToolsVer>/emacs"
    load-path))
  (setq erlang-root-dir "C:/Program Files/erl5.6.2")
  (setq exec-path (cons "C:/Program Files/erl5.6.2/bin" exec-path))
  (require 'erlang-start)
Run Code Online (Sandbox Code Playgroud)

War*_*ung 17

为了c(tut)工作,tut.erl当前目录中必须有一个文件.

如果从命令行启动Erlang解释器很容易实现,这在Linux和OS X等系统上很常见,但这不是Windows上的常用模式.当您从"开始"菜单中的图标启动Windows上的Erlang时,当前工作目录默认为werl.exe您的tut.erl文件所在的位置.

要使命令按预期工作,必须将工作目录更改为tut.erl启动Erlang shell后的位置.如果tut.erl在桌面上,命令在Vista或Windows 7上将是这样的:

cd("c:/Users/myname/Desktop").
Run Code Online (Sandbox Code Playgroud)

(是的,你必须使用正斜杠.反斜杠在Erlang字符串中是特殊的.)

在Windows XP及更早版本中,您的桌面文件夹更深层次.放入werl.exe系统PATH并在此类系统上使用命令行可能更简单.

没有必要,但您可能需要考虑安装Cygwin.它的Bash shell将为您提供更多Linux或OS X环境,这将帮助您使用为这些操作系统构建的其他教程.


Maz*_*ake 10

安装Erlang后打开shell并执行:

1> pwd().
C:/Program Files/erl5.7.1/usr
ok
2>
Run Code Online (Sandbox Code Playgroud)

假设你有一个文件; 桌面上的"tut.erl".内容可能如下所示:

-module(tut).
-compile(export_all).

hello_world() ->
  hello.
Run Code Online (Sandbox Code Playgroud)

您必须首先将当前工作目录的路径更改为桌面(或者您想要进行编译的位置).也许这样:

2> cd("F:/Desktop").
F:/Desktop
ok
3>
Run Code Online (Sandbox Code Playgroud)

然后你可以执行编译.

3> c(tut).
{ok,tut}
4>
Run Code Online (Sandbox Code Playgroud)

然后测试模块

4> tut:hello_world().
hello
5> 
Run Code Online (Sandbox Code Playgroud)

更多信息请参考此处的文档:Erlang官方文档 有关shell的更多信息,请查看:Shell模块

希望这能让你开始.

  • 哦,顺便说一句,在Windows中我绝对最好的提示是为你拥有的每个项目创建一个werl.exe的windows快捷方式,然后将"Run in"属性更改为当前工作目录.另一个提示是在"Target"属性中添加标志,例如-sname,-setcookie(在分布式环境中很有用),也许-pa可以为代码搜索路径添加其他路径.关于这些的更多信息:http://erlang.org/doc/man/erl.html (4认同)