首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以将包含目录添加到erl命令中吗?

我可以将包含目录添加到erl命令中吗?
EN

Stack Overflow用户
提问于 2010-12-04 16:45:57
回答 2查看 4.2K关注 0票数 7

在用erlc编译erlang文件时,我可以添加其他包含目录,如下所示:

代码语言:javascript
复制
erlc -I /home/trotter/code/open-source/yaws/include src/myapp.erl

但是,当我从erl内部编译时,我看不到在命令行上这样做的方法。相反,我必须在repl中执行以下操作:

代码语言:javascript
复制
> compile:file("src/myapp", 
               [verbose,
                report_errors,
                {i,"/home/trotter/code/open-source/yaws/include"}]).

是否有更好的方法来完成我不知道的事情,比如将一些命令行参数传递给erl?如果不是的话,任何不需要我每次编译都要输入讨厌路径的干燥建议。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-05 03:36:41

我很少从shell编译,只用于使用c(foo)的小型测试脚本。我的设计是:

我有一个基础设施建设。make构建软件(make只是rebar的包装器)。然后,我可以通过点击绑定到emacs emacs命令的F12来构建compile内部的代码。在vim中,如果我的vim内存满足我的需要,您也可以使用:make命令(这已经有几年了)。现在,这当然会构建代码并将其抛到ebin dir中。

下一步是使用有关ebin dir的知识启动Erlang:

代码语言:javascript
复制
 erl -pa ./ebin

这意味着任何对模块foo的引用都会检查./ebin/foo.beam。当我发现必须修复一些代码时,我在编辑器中修复它,用F12编译代码,然后在热加载代码的shell中执行l(foo)

它还具有一个优点,即任何编译错误现在都在编辑器的管辖范围内,所以我可以快速跳到错误并修复它。

票数 6
EN

Stack Overflow用户

发布于 2010-12-05 21:42:39

您可以设置ERL_COMPILER_OPTIONS

请参阅http://www.erlang.org/doc/man/compile.html

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4354587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档