【发布时间】:2014-12-15 03:26:58
【问题描述】:
我正在尝试将啤酒添加到一个简单的 erlang.mk 项目中。我了解啤酒使用解析转换,因此您必须相应地设置编译标志;所以请听从这里的建议:
Lager calls failing during Common Test test runs
我的 Makefile 如下所示:
PROJECT = hello_erlang_mk
DEPS = cowboy lager
# this must be first
include erlang.mk
# Compile flags
ERLC_COMPILE_OPTS= +'{parse_transform, lager_transform}'
# Append these settings
ERLC_OPTS += $(ERLC_COMPILE_OPTS)
TEST_ERLC_OPTS += $(ERLC_COMPILE_OPTS)
该版本构建良好,但似乎从未包含过更大的版本:
Eshell V5.10.4 (abort with ^G)
(hello_erlang_mk@127.0.0.1)1> lager:info("~s is ~s!", [lager, cool]).
** exception error: undefined function lager:info/2
有人对如何在 erlang.mk 项目中使用 lager 有任何指示吗?
[我使用的是 Erlang R16B03,Ubuntu 14.04]
谢谢。
【问题讨论】:
-
我不熟悉 erlang.mk,但我认为使用项目级编译标志指定解析转换是不好的做法。如果您将使用模块级属性会更干净:
-compile({parse_transform, lager_transform}).