Windows编译ejabberd

(金庆的专栏)

安装 erlang OTP. 添加路径到 PATH, 使 erl 可以运行。

git clone ejabberd

安装 rebar:
git clone git@github.com:rebar/rebar.git

E:\Git\rebar>bootstrap.bat
escript: exception error: no match of right hand side value "找不到 E:\\Git\\reb
ar\\ebin\\rebar.beam\r\n"

先创建 ebin\rebar.beam。见:https://github.com/rebar/rebar/issues/613

复制生成的 rebar.cmd 到 ejabberd 目录。其实就几行代码:
setlocal
set rebarscript=%~f0
escript.exe "%rebarscript:.cmd=%" %*

rebar.cmd get-deps

Cloning into 'p1_xmlrpc'...
Pulling luerl from {git,"https://github.com/rvirding/luerl",{tag,"v0.2"}}
Cloning into 'luerl'...
'sh' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
ERROR: Command ['get-deps'] failed!

更改 rebar.config.script,去除sh, 改为
{'get-deps', ""}

将 ejabberd.app.src.in 复制为 ejabberd.app.src,更改其中的变量,
E:\Git\ejabberd>rebar compile skip_deps=true
==> rel (compile)
==> ejabberd (compile)

deps 没有编译,可以使用安装包。
只需替换有更新的beam文件到安装目录。

补充:

E:\Git\ejabberd_jinq0123>rebar compile skip_deps=true
==> rel (compile)
==> ejabberd_jinq0123 (compile)
Compiled asn1/XmppAddr.asn1
Compiled src/eldap_filter_yecc.yrl
e:/Git/ejabberd_jinq0123/src/ejabberd_config.erl:none: undefined parse transform
 'lager_transform'
ERROR: compile failed while processing E:/Git/ejabberd_jinq0123: rebar_abort

须先用 rebar compile 编译 lager. 其他无法编译的可忽略,然后再
rebar compile skip_deps=true

Windows编译ejabberd的更多相关文章

  1. OGRE 2.1 Windows 编译

    版权所有,转载请注明链接 OGRE 2.1 Windows 编译 环境: Windows 7 64Bit Visual Studio 2012 OGRE 2.1 CMake 2.8.12.1 OGRE ...

  2. 【转载】OGRE 2.1 Windows 编译

    OGRE 2.1 Windows 编译 环境: Windows 7 64Bit Visual Studio 2012 OGRE 2.1 CMake 2.8.12.1 OGRE: OGRE官方推出了最新 ...

  3. CEF3.2623使用记录:windows编译

    CEF3.2623使用记录:windows编译 1:cef3.2623下载地址 2623是cef3最后一个支持xp系统的版本,且可以支持html的audio标签,可以用作对html音频的处理下载地址为 ...

  4. Windows 编译安装 nginx 服务器 + rtmp 模块

    有关博客: <Windows 编译安装 nginx 服务器 + rtmp 模块>.<Ubuntu 编译安装 nginx>.<Arm-Linux 移植 Nginx> ...

  5. php beast windows编译教程

    git clone https://github.com/Microsoft/php-sdk-binary-tools.git c:\php-sdk cd c:\php-sdk git checkou ...

  6. Windows编译Nginx源码

    Windows下的Nginx战役,人不作就不会死!就像是拿着麦当劳的优惠券去买肯德基一样,别扭啊 Nginx是一款轻量级的Web 服务器.反向代理服务器.邮件服务器等等集一大串荣誉于一身的大牌人物!他 ...

  7. 在windows编译MariaDB

    OS: Windows XP sp3 IDE: VS2010 MariaDB: V5.5 (到目前为止2016.5,中文域(.cn)只有清华大学 TUNA 镜像源可用) (.tar.gz为源码:.zi ...

  8. Windows编译安装OpenSSL

    windows下使用vs2008中的nmake编译安装openssl的脚本build.bat: echo off & color 0A :: 项目名称 set PROJECT=openssl ...

  9. 专题:Windows编译x264、SDL、faac、ffmpeg过程

    Windows上编译ffmpeg完整过程,包括编译x264.SDL.faac.在Windows上编译ffmpeg需要用MinGW+msys,本专题用于记录编译过程中遇到的各种问题及解决方法,转载请注明 ...

随机推荐

  1. C#之不安全代码

    MSDN:"尽管实际上对 C 或 C++ 中的每种指针类型构造,C# 都设置了与之对应的引用类型,但仍然会有一些场合需要访问指针类型.例如,当需要与基础操作系统进行交互.访问内存映射设备,或 ...

  2. C#之Message(转)

    一.消息概述 Windows下应用程序的执行是通过消息驱动的.消息是整个应用程序的工作引擎,我们需要理解掌握我们使用的编程语言是如何封装消息的原理. 什么是消息(Message) 消息就是通知和命令. ...

  3. Linux使用踩坑记

    Ubuntu安装坑: 1.对于新手第一次安装ubuntu,特殊情况会出现因为分辨率问题导致安装界面不全,无法进行下一步操作. 解决方案:使用alt+鼠标左键拖动屏幕Linux文件名乱码问题: 2.因为 ...

  4. 【BZOJ3506】【Cqoi2014】排序机械臂

    传送门(因为BZOJ上没有题面...所以放的是luogu的) 题意:你需要维护一个序列,支持区间翻转与查询区间最小. 解题思路:由于区间最小实际上每一次就是对应的整个数列的第k小,因此可以直接预处理解 ...

  5. Linux命令-关机命令详解

    关机命令:1.halt 立刻关机 2.poweroff 立刻关机 3.shutdown -h now 立刻关机(root用户使用) 4.shutdown -h 10 10分钟后自动关机 如果是通过sh ...

  6. 新版Eclipse打开jsp、js等为文本编辑,没有JSP Editor插件问题

    刚从官网下载安装的Eclipse Java Oxygen.2但是打开的jsp文件尽然默认文本编辑器打开,就js文件也是一样,纳闷! 网上搜索一番,原来缺少web开发相关工具, 下面给插件安装方法: 1 ...

  7. Spring学习笔记3——使用注解的方式完成注入对象中的效果

    第一步:修改applicationContext.xml 添加<context:annotation-config/>表示告诉Spring要用注解的方式进行配置 <?xml vers ...

  8. Python中的条件和循环语句

    条件和循环语句 1. 条件语句 if单用 格式:if 条件表达式 例如:if 5 > 3: print('True') >>> 'True' #当条件满足时才会执行上述操作. ...

  9. 移动端开发,文字增加,字体自动放大(font boosting)

    问题缘由:做文章详情页的时候,文字多了一点字体就放大了,真的是奇了怪了. 问题重现 一段文字的时候 两段文字的时候 很明显,字体放大了很多. 疑点 meta标签缩放的问题 最近正好遇到处理retain ...

  10. Linux学习之CentOS(七)---常用基本操命令1

    cd   pwd  mkdir  rmdir  ls  cp  rm  mv  cat  tac  nl  more   less   head   tail   touch ①目录管理:ls.cd. ...