一.安装编译器

在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. 分布式实时日志分析解决方案ELK部署架构

    一.概述 ELK 已经成为目前最流行的集中式日志解决方案,它主要是由Beats.Logstash.Elasticsearch.Kibana等组件组成,来共同完成实时日志的收集,存储,展示等一站式的解决 ...

  2. hydra 密码破解工具详解

    一.简介 hydra是著名黑客组织thc的一款开源的暴力密码破解工具,可以在线破解多种密码.官 网:http://www.thc.org/thc-hydra,可支持AFP, Cisco AAA, Ci ...

  3. sql 自定义split

    以下数据库操作针对sql server. 问题来源:由于项目中,有的表字段内容是由多个id或多个其他内容拼接而成.(如:'1,2,3,4,5',或者'name_age_school'),特点是都用某个 ...

  4. Linux 入门记录:二十、Linux 包管理工具 YUM

    一.YUM(Yellowdog Updater, Modified) 1. YUM 简介 RPM 软件包形式管理软件虽然方便,但是需要手动解决软件包的依赖问题.很多时候安装一个软件首先需要安装 1 个 ...

  5. OpenCV利用矩阵实现图像旋转

    利用OpenCV的矩阵操作实现图像的逆时针旋转90度操作 代码 Mat src = imread("C:\\Users\\fenggl\\Desktop\\测试.jpg",MREA ...

  6. 【python】msgpack使用

    1.存储数据 import msgpack var={'a':'this','b':'is','c':'a test'} with open('file.name','wb') as f: msgpa ...

  7. hdu 1203(01背包)被初始化坑惨了

    I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  8. 微信小程序 - "锚点"功能的实现

    “锚点”功能在实际应用设计的好,可以提高用户体验.今天碰到一个类似下面功能: 由于页面数据比较多,除了做些上拉加载,下拉刷新等优化.还可以进行进行分类,如上图.功能要求:点击导航的菜单,相应页面的分类 ...

  9. Java学习笔记(十三)——通过Netbeans开发环境生成oracle数据库中表的对应hibernate映射文件

    [前面的话] 身体慢慢已经快好了,感觉真好,哈哈. 这篇文章要通过Hibernate对数据库进行操作,而Netbeans可以直接通过数据库逆向生成对应的映射文件.基础文章,选择性阅读. [步骤] 1. ...

  10. AC日记——[POI2008]BLO-Blockade 洛谷 [POI2008]BLO-Blockade

    [POI2008]BLO-Blockade 思路: tarjan: 代码: #include <bits/stdc++.h> using namespace std; #define ma ...