首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

rebar 编译时没法指定输出目录

2012-12-31 
rebar 编译时无法指定输出目录一直用eclipse来开发erlang的,这几天想试着用rebar来构建当前的项目。由于项

rebar 编译时无法指定输出目录
一直用eclipse来开发erlang的,这几天想试着用rebar来构建当前的项目。由于项目的目录结构不太标准,所以要在rebar.config中配置,配置源码文件目录、头文件目录、输出目录等,但我发现用outdir标志指定输出目录时不管用,于是查了下rebar的源码。在rebar_lfe_compiler.erl中有62行如下代码:  Opts = [{i, "include"}, {outdir, "ebin"}, return]                ++ rebar_config:get_list(Config, erl_opts, []),
很明显,这里指定了默认的outdir标志,导致我们定义的outdir标志无效,改成下面的形式,重新make编译一下            Opts =rebar_config:get_list(Config, erl_opts, [])                ++  [{i, "include"}, {outdir, "ebin"}, return],
现在已经能够指定rebar输出到其它目录了,但是自己生成的*.app文件依然输出到ebin目录中。这是因为这个文件是由rebar而不是erlang编译器生成的,可以在rebar_app_utils.erl中找到了相关代码,看了一下修改起来麻烦,所以不改了。同样的道理*.app.src文件也必需放在src目录中

热点排行