gpt4 book ai didi

erlang - 如何在 Ubuntu Karmic 上安装 LFE?

转载 作者:太空宇宙 更新时间:2023-11-03 18:38:09 24 4
gpt4 key购买 nike

Erlang 已经安装:

$dpkg -l|grep erlang
ii erlang 1:13.b.3-dfsg-2ubuntu2 Concurrent, real-time, distributed function
ii erlang-appmon 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP application monitor
ii erlang-asn1 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP modules for ASN.1 support
ii erlang-base 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP virtual machine and base applica
ii erlang-common-test 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP application for automated testin
ii erlang-debugger 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP application for debugging and te
ii erlang-dev 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP development libraries and header
[... many more]

Erlang 似乎可以工作:

$ erl
Erlang R13B03 (erts-5.7.4) [source] [64-bit] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V5.7.4 (abort with ^G)
1>

我从github上下载了lfe,查看了0.5.2:

git clone http://github.com/rvirding/lfe.git
cd lfe
git checkout -b local0.5.2 e207eb2cad

$ configure
configure: command not found

$ make
mkdir -p ebin
erlc -I include -o ebin -W0 -Ddebug +debug_info src/*.erl
#erl -I -pa ebin -noshell -eval -noshell -run edoc file src/leex.erl -run init stop
#erl -I -pa ebin -noshell -eval -noshell -run edoc_run application "'Leex'" '"."' '[no_packages]'
#mv src/*.html doc/

一定是我错过了什么愚蠢的东西 :o

$ sudo make install
make: *** No rule to make target `install'. Stop.

$ erl -noshell -noinput -s lfe_boot start
{"init terminating in do_boot",{undef,[{lfe_boot,start,[]},{init,start_it,1},{init,start_em,1}]}}

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()

是否有示例说明如何创建 hello world 源文件并编译和运行它?

最佳答案

不,您没有错过任何东西。 LFE 中的 Makefile “不够完美” 应该被忽略,它将在下一个版本中得到改进。为了补偿所有需要的文件已经编译并且 .beam 文件位于 ebin 目录中。因为它不是 OTP 的一部分,所以我认为它不应该安装在那里。

处理此问题的最简单方法是创建私有(private) erlang 库目录并将环境变量 ERL_LIBS 指向它。然后将整个 LFE 目录放在那里。当 erlang 启动时,代码服务器会自动将 lfe/ebin 目录添加到路径中,并且会自动找到并加载那里的 .beam 文件。这将适用于任何包含 ebin 目录的包。这也适用于 Windows。所以:

  1. 创建一个 libs 目录,比如 ~/erlang/lib
  2. 设置环境变量ERL_LIBS,export ERL_LIBS=~/erlang/lib
  3. 将整个 LFE 目录放在那里

当您启动 erlang 时,您将在代码路径 (code:get_path() )。然后,您还可以直接使用

启动 LFE shell
erl -noshell -noinput -s lfe_boot start

将来会有一个 lfe 和一个 lfe.bat 来执行此操作。

与 erlang 一样,任何文本编辑器都可以编辑 LFE。对于 emacs,有一个 LFE 模式,它仍然相当基本但可以使用。您还不能在窗口中运行 LFE。很快。包含它的最佳方法是将以下内容放入您的 .emacs 文件中:

;; LFE mode.
(setq load-path (cons "/Users/rv/erlang/lib/lfe/emacs" load-path))
(require 'lfe-start)

lfe/examples 中有一些示例文件,应该都可以。在 lfe/test/visual 中有一堆我的测试文件,它们已作为示例文件包含在内。要从普通的 erlang shell 编译 LFE 文件,请执行以下操作

lfe_comp:file("foo").
l(foo). %No autloload here, do this to ensure loading

在 LFE shell 中执行:

(c '"foo")              ;This will autoload

lfe/docs 中有一堆文档,非常准确,但 user_guide.txt 需要扩展。还有一个用于 LFE 的 Google 群组,网址为

http://groups.google.se/group/lisp-flavoured-erlang

其中包含一些有趣的讨论,人们在 github LFE wiki 中写了很多。

我想就是这样了。如果/当您有更多问题时,请联系我。

关于erlang - 如何在 Ubuntu Karmic 上安装 LFE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2835942/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com