一.安装编译器

在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装。

二.运行编译器

安装完编译器后,打开安装目录下的werl.exe,就可以进入编译器环境。可以通过toolbar:start().来显示toolbar。通过halt()来退出编译器。

三.配置编译器

用命令init:get_arguments().可以获得编译器的环境配置。

[{root,["C:\\PROGRA~2\\ERL510~1.2"]},
 {progname,["erl"]},
 {home,["C:\\Users\\guo"]},

我们可以利用命令行,在打开werl.exe时传入参数来配置编译器的环境

1.mode

-mode embedded 所有的code都会按照boot script的配置在编译器启动时一起加载

-mode interactive(default) code按需加载

2.pa和pz

配置编译文件的查找路径

-pa Dir 将Dir加到查找路径的开头,即最先在这个路径查找代码文件

-pz Dir 加到路径的结尾

注意,Dir必须是全英文的路径,不支持带汉字的路径。路径中间有空格的话需要用双引号括住,否则会理解为两个路径。用空格来分割开多个路径。

3.通过boot script进行更多配置

详见http://www.erlang.org/doc/system_principles/system_principles.html

四.安装IDE

其实直接用notepad就行,也可以在http://www.sublimetext.com下载Sublime Text并安装。不过这个工具貌似需要注册。我装的beta3版本,没觉得怎么好用。

五.编写代码并存为.erl文件

-module(hello).
-export([say/0]). say() ->
io:format("hello world~n",[]).

将上述代码存为hello.erl

六.编译文件

通过c(hello).语句来编译hello.erl文件,文件将被编译成hello.beam文件。

编译器默认需要编译的文件位于其启动路径下。如果你需要编译别的路径下的erl文件,如D:\Erlang下的erl文件,有三种办法:

1.可以在该文件夹下创建一个erl.bat,并利用"C:\Program Files (x86)\erl5.10.2\bin\werl.exe"来打开编译器。

2.参见(三.2),利用-pa,-pz来加入路径

3.在Erlang编辑器中,通过code模块来加入路径

add_pathz(Dir)加在路径尾

add_patha(Dir)加在路径头

add_pathsz([Dir1,...,DirN])加在路径尾

add_pathsa([Dir1,...,DirN])加在路径头

需要注意的是Dir中不能用"\",而需要用"/",Dir中用汉字不报错,但是编译时不能正确识别。

所以如果你的路径中含有汉字,我目前知道的方案只有1

注意:我用了Emakefile的方法后,2,3这两种方法都失效了,不知道为啥,重装无效!!!

七.高级编译

1.可以使用compile模块来编译

file(File)

file(File, Options) :参数配置参见http://www.erlang.org/doc/man/compile.html

2.使用make模块,通过Emakefile来定制编译行为

方法为在编译器的启动路径下新建Emakefile文件,为不同模块配置编译行为,例如

{"D:/code/Erlang/*", [report, verbose, {outdir,"D:/code/Erlang"}] }.

这个配置是说将编译D:/code/Erlang/路径下的所有文件,并将编译好的beam放入D:/code/Erlang文件夹下。接着运行make:all([load]).就能完成编译。

参见http://www.erlang.org/doc/man/make.html

八.运行函数

通过hello:say().语句就能运行函数了。

Erlang学习记录(一)——Windows下的环境搭建的更多相关文章

  1. Windows下的环境搭建Erlang

    Windows下的环境搭建 Erlang 一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二. ...

  2. Redis在windows下的环境搭建

    Redis在windows下的环境搭建 下载windows版本redis,,官方下载地址:http://redis.io/download, 不过官方没有Windows版本,官网只提供linux版本的 ...

  3. 2017.7.18 windows下ELK环境搭建

    参考来自:Windows环境下ELK平台的搭建 另一篇博文:2017.7.18 linux下ELK环境搭建 0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1.7, ...

  4. Spark学习笔记--Spark在Windows下的环境搭建

    本文主要是讲解Spark在Windows环境是如何搭建的 一.JDK的安装 1.1 下载JDK 首先需要安装JDK,并且将环境变量配置好,如果已经安装了的老司机可以忽略.JDK(全称是JavaTM P ...

  5. Spark学习笔记--Spark在Windows下的环境搭建(转)

    本文主要是讲解Spark在Windows环境是如何搭建的 一.JDK的安装 1.1 下载JDK 首先需要安装JDK,并且将环境变量配置好,如果已经安装了的老司机可以忽略.JDK(全称是JavaTM P ...

  6. 区块链Hyperledger Fabric 学习记录(一)开发环境搭建(ubuntu16.04/ubuntu18.04)

    目录 Fabric开发环境搭建 更新说明 教程环境及软件版本 Docker 安装Docker 配置用户组 配置Aliyun Docker加速器 安装docker-compose Go 下载源码 安装源 ...

  7. 【Pytorch-入门】windows下的环境搭建(经验证成功~)

    前言 实验需要,之前使的tensorflow[因为自己手边的服务器都是windows环境TT...],但身边的师兄们用的都是pytorch,自己查了查现在做科研基本上都是用的pytorch,而且现在p ...

  8. Python科学计算(二)windows下开发环境搭建(当用pip安装出现Unable to find vcvarsall.bat)

    用于科学计算Python语言真的是amazing! 方法一:直接安装集成好的软件 刚开始使用numpy.scipy这些模块的时候,图个方便直接使用了一个叫做Enthought的软件.Enthought ...

  9. Spark在Windows下的环境搭建(转)

    原作者:xuweimdm   原文网址:http://blog.csdn.net/u011513853/article/details/52865076 由于Spark是用Scala来写的,所以Spa ...

随机推荐

  1. 利用keepalive+mysql replication 实现数据库的高可用

    利用keepalive+mysql replication 实现数据库的高可用 http://www.xuchanggang.cn/archives/866.html

  2. 亚马逊EC2根硬盘空间扩容

    买的系统盘为32G,结果发现只使用了8G,剩下的都未分配 lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda : 32G disk └─xvda1 : ...

  3. English——Unit 2

    radiant radiate radical ideal ideology identical identification identify identity journal jounalist ...

  4. LeetCode解题报告—— Regular Expression Matching

    Given an input string (s) and a pattern (p), implement regular expression matching with support for  ...

  5. LeetCode解题报告—— Combination Sum & Combination Sum II & Multiply Strings

    1. Combination Sum Given a set of candidate numbers (C) (without duplicates) and a target number (T) ...

  6. hdu 4632(区间dp)

    Palindrome subsequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65535 K (Java/ ...

  7. python中的is, ==与对象的相等判断

    在java中,对于两个对象啊a,b,若a==b表示,a和b不仅值相等,而且指向同一内存位置,若仅仅比较值相等,应该用equals.而在python中对应上述两者的是‘is’ 和‘==’. (1) py ...

  8. css - 字体图标的制作

    很多的时候我们在开发过程中一般都是直接使用图片,尤其在移动页面频繁请求图片对性能不是很好 ,所以图标字体的应用也越来越广泛.一般情况下直接用的是font awesome字体,但是有时候需要制作自己风格 ...

  9. Centos7yum安装LNMP

    (1)安装nginx 0.关闭防火墙 systemctl stop firewald.service systemctl disable firewald.service 1.使用nginx官方提供的 ...

  10. 【转载】RecyclerView使用全解析

    崇拜下鸿洋大神,原文地址:http://blog.csdn.net/lmj623565791/article/details/45059587 概述 RecyclerView出现已经有一段时间了,相信 ...