我试图在Linux机器上构建(make)Apache Trift,并且在构建过程中遇到以下错误:
make[3]: Entering directory `/home/developer/tools/apache-thrift/thrift-0.9.0/lib/erl'
./rebar get-deps
==> jsx (get-deps)
==> erl (get-deps)
./rebar compile
==> jsx (compile)
src/jsx_decoder.erl:123: redefining macro 'new_seq'
src/jsx_decoder.erl:126: redefining macro 'acc_seq'
src/jsx_decoder.erl:660: argument mismatch for macro 'acc_seq'
src/jsx_decoder.erl:626: function low_surrogate/4 undefined
src/jsx_decoder.erl:682: Warning: function is_partial_low/1 is unused
src/jsx_decoder.erl:692: Warning: function surrogate_to_codepoint/2 is unused
make[3]: *** [all] Error 1
make[3]: Leaving directory `/home/developer/tools/apache-thrift/thrift-0.9.0/lib/erl'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/developer/tools/apache-thrift/thrift-0.9.0/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/developer/tools/apache-thrift/thrift-0.9.0'
make: *** [all] Error 2
有人可以帮忙吗?
我正在运行
Ubuntu 10.04 LTS
,并确保已安装required libraries 最佳答案
答案与我的评论相同。
如果不需要erlang来使用Thrift,只需在编译Thrift时将其关闭即可:
./configure --with-erlang=no
可能您的本地计算机上的erlang库有些混乱,这就是您遇到问题的原因。