安装ChicagoBoss时make失败:escript报错rebar:main/1未定义
解决ChicagoBoss在OTP25下make时的rebar兼容错误
问题根源
你遇到的错误是因为ChicagoBoss默认依赖的**旧版rebar(rebar1)**不兼容Erlang OTP25,而你安装的rebar3并没有被项目的Makefile调用,导致加载旧rebar模块时出现编译版本不匹配的问题。
解决方法
方法一:替换项目内的rebar脚本
- 进入ChicagoBoss根目录,删除自带的旧rebar文件:
rm ./rebar
- 创建软链接指向你已安装的rebar3:
ln -s $(which rebar3) ./rebar
- 重新执行
make命令即可。
方法二:修改Makefile调用rebar3
- 打开项目根目录的
Makefile文件,搜索所有调用rebar的行(比如rebar get-deps、rebar compile)。 - 将所有的
rebar替换为rebar3,保存文件。 - 重新执行
make。
额外提示
如果上述方法无效,建议检查你使用的ChicagoBoss版本是否支持OTP25。部分早期版本的ChicagoBoss对高版本Erlang兼容性有限,可以尝试切换到项目的最新分支再尝试编译。
内容的提问来源于stack exchange,提问作者close2zero
相关产品推荐
相关产品推荐

