当用Erlang文件与 erlc 我可以添加其他包括目录:

erlc -I /home/trotter/code/open-source/yaws/include src/myapp.erl

当我从内部编译 erl 不过,我看不到在命令行上做到这一点的方法。相反,我必须在重复中执行以下操作:

> compile:file("src/myapp", 
               [verbose,
                report_errors,
                {i,"/home/trotter/code/open-source/yaws/include"}]).

有没有更好的方法来做到这一点,例如将一些命令行的论点传递给ERL?如果没有,任何关于将其干燥的建议 要求我每次编译时都输入讨厌的路径。

有帮助吗?

解决方案

我很少从外壳中编译 - 仅适用于带有的小测试脚本 c(foo). 。我的设置是:

我有一个基础架构。 make 构建软件(制作只是包装器 rebar 这里)。然后我可以从内部构建代码 emacs 通过击中 F12 绑定到 compile emacs命令。在 vim 您可以对 :make 命令如果我的VIM内存为我服务(已经有几年了)。现在,这当然会构建代码并将其扔进 ebin dir。

下一步是启动Erlang,并了解 ebin DIR:

 erl -pa ./ebin

这意味着对模块的任何引用 foo 去检查 ./ebin/foo.beam. 。然后,当我弄清楚我必须修复一些代码时,我将其修复在编辑器中,将代码编译为 F12 然后执行 l(foo) 在加载代码的外壳中。

它还具有一个优势,即现在在编辑器的管辖范围内任何汇编错误,因此我可以快速跳入错误并修复它。

其他提示

您可以设置 ERL_COMPILER_OPTIONS.

http://www.erlang.org/doc/man/compile.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top