编译牛仔项目忽略错误
Compile cowboy project ignoring errors
我对 ERLC_OPTS 进行了修改,或者我是这么认为的。
不得不清理我的 erlang.mk 但没有保存它。
在哪里添加警告 ok 标志?
root@marble-pyramid-1:~/tunnel-deploy# make run
erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[1]: Entering directory `/root/tunnel-deploy/deps/cowboy'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[2]: Entering directory `/root/tunnel-deploy/deps/cowlib'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
DEPEND cowlib.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
ERLC cow_base64url.erl cow_cookie.erl cow_date.erl cow_hpack.erl cow_http.erl cow_http2.erl cow_http_hd.erl cow_http_te.erl cow_mimetypes.erl cow_multipart.erl cow_qs.erl cow_spdy.erl cow_sse.erl cow_uri.erl cow_ws.erl
APP cowlib
make[2]: Leaving directory `/root/tunnel-deploy/deps/cowlib'
make[2]: Entering directory `/root/tunnel-deploy/deps/ranch'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
DEPEND ranch.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[2]: Leaving directory `/root/tunnel-deploy/deps/ranch'
DEPEND cowboy.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
GEN rebar.config
make[1]: Leaving directory `/root/tunnel-deploy/deps/cowboy'
make[1]: Entering directory `/root/tunnel-deploy/deps/jiffy'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
CC=cc escript enc compile
make -f c_src/Makefile.erlang.mk
make[2]: Entering directory `/root/tunnel-deploy/deps/jiffy'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/tunnel-deploy/deps/jiffy'
DEPEND jiffy.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[1]: Leaving directory `/root/tunnel-deploy/deps/jiffy'
DEPEND tunnel.d
erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
ERLC actions.erl board.erl clock.erl door.erl hall.erl join_handler.erl player_status_handler.erl res.erl res_test.erl room.erl room_test.erl s.erl seats.erl table.erl table_info_handler.erl table_play_handler.erl table_test.erl tunnel_app.erl tunnel_sup.erl
compile: warnings being treated as errors
src/actions.erl:2: export_all flag enabled - all functions will be exported
make[1]: *** [ebin/tunnel.app] Error 1
make: *** [app] Error 2
我尝试将 -W0
添加到此:
Write(["ERLANG_ARCH = ", rebar_utils:wordsize(), "\nexport ERLANG_ARCH\n"]),
fun() ->
Write("ERLC_OPTS = +debug_info -W0\nexport ERLC_OPTS\n"),
case lists:keyfind(erl_opts, 1, Conf) of
false -> ok;
{_, ErlOpts} ->
但我仍然遇到该错误。
您可以尝试通过设置 ERLC_OPTS 来过滤掉 Erlang.mk 用于编译的默认选项,如下所示:
ERLC_OPTS := $(filter-out -Werror,$(ERLC_OPTS))
根据 Erlang.mk user guide
我对 ERLC_OPTS 进行了修改,或者我是这么认为的。 不得不清理我的 erlang.mk 但没有保存它。
在哪里添加警告 ok 标志?
root@marble-pyramid-1:~/tunnel-deploy# make run
erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[1]: Entering directory `/root/tunnel-deploy/deps/cowboy'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[2]: Entering directory `/root/tunnel-deploy/deps/cowlib'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
DEPEND cowlib.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
ERLC cow_base64url.erl cow_cookie.erl cow_date.erl cow_hpack.erl cow_http.erl cow_http2.erl cow_http_hd.erl cow_http_te.erl cow_mimetypes.erl cow_multipart.erl cow_qs.erl cow_spdy.erl cow_sse.erl cow_uri.erl cow_ws.erl
APP cowlib
make[2]: Leaving directory `/root/tunnel-deploy/deps/cowlib'
make[2]: Entering directory `/root/tunnel-deploy/deps/ranch'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
DEPEND ranch.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[2]: Leaving directory `/root/tunnel-deploy/deps/ranch'
DEPEND cowboy.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
GEN rebar.config
make[1]: Leaving directory `/root/tunnel-deploy/deps/cowboy'
make[1]: Entering directory `/root/tunnel-deploy/deps/jiffy'
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
CC=cc escript enc compile
make -f c_src/Makefile.erlang.mk
make[2]: Entering directory `/root/tunnel-deploy/deps/jiffy'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/tunnel-deploy/deps/jiffy'
DEPEND jiffy.d
/root/tunnel-deploy/erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
make[1]: Leaving directory `/root/tunnel-deploy/deps/jiffy'
DEPEND tunnel.d
erlang.mk:26: Please upgrade to GNU Make 4 or later: https://erlang.mk/guide/installation.html
ERLC actions.erl board.erl clock.erl door.erl hall.erl join_handler.erl player_status_handler.erl res.erl res_test.erl room.erl room_test.erl s.erl seats.erl table.erl table_info_handler.erl table_play_handler.erl table_test.erl tunnel_app.erl tunnel_sup.erl
compile: warnings being treated as errors
src/actions.erl:2: export_all flag enabled - all functions will be exported
make[1]: *** [ebin/tunnel.app] Error 1
make: *** [app] Error 2
我尝试将 -W0
添加到此:
Write(["ERLANG_ARCH = ", rebar_utils:wordsize(), "\nexport ERLANG_ARCH\n"]),
fun() ->
Write("ERLC_OPTS = +debug_info -W0\nexport ERLC_OPTS\n"),
case lists:keyfind(erl_opts, 1, Conf) of
false -> ok;
{_, ErlOpts} ->
但我仍然遇到该错误。
您可以尝试通过设置 ERLC_OPTS 来过滤掉 Erlang.mk 用于编译的默认选项,如下所示:
ERLC_OPTS := $(filter-out -Werror,$(ERLC_OPTS))
根据 Erlang.mk user guide