2

我知道还有另一篇关于这个的帖子,但是我有一个不同于Opa won't compile hello_web.opa的错误。

尝试编译hello_chat.opa示例时3. 你好,聊天,我收到以下错误:

In hello_chat.opa [1:29-1:29 | global chars=29-29]
Syntax error at line 1, column 29
The error may be in the following citation, usually in the red part (starting at ?) or just before:
<<type message = {string author?,string text}

room = Network.network(message) (Network.cloud("room"))

do function start() {
 >>
Hint: expected "'" or "..." or ":" or ";" or "_" or "}" or "~" or '_' or <spacing> or <value identifier> or ['0'-'9'] or ['A'-'Z'] or ['a'-'z']
(while parsing <record type fields> starting at line 1, column 16)
Error
Syntax error

我正在运行 Ubuntu 64 (v11.04) 并安装了所有依赖项(以下文档)。我已经从 .deb 包 (opa_1.0s3.5+build687_amd64.stable.deb) 安装了 opa。

我也尝试从源代码构建它,配置步骤抱怨缺少一些部门。可能这是解决问题的关键吗?

giacomo@linuxlap:~/src/opalang$ ./configure
Checking your OS... Linux
Checking your architecture... x86_64
Checking ocamlopt... /usr/local/bin/ocamlopt
Checking ocamlbuild... /usr/local/bin/ocamlbuild
Checking ocamldir... /usr/local/lib/ocaml
Checking ocaml version... 3.12.1
Checking your ocaml setup... 3.12.1, Unix 64bit
Checking for camlp4... /usr/local/bin/camlp4o
Checking for perl 5... found
Checking for java... found
Checking for camlidl... Disabled
Checking for ocamlfind... Not found (but optional)
Checking for ssl... Not found
Checking for cryptokit... Not found
Checking for camlzip... Not found
Checking for graph... Not found
Checking for ulex... Not found

Not configured. You need the following libraries installed:
  - ocaml_ssl (might be found in package libssl-ocaml-dev)
  - cryptokit (might be found in package libcryptokit-ocaml-dev)
  - camlzip (might be found in package libzip-ocaml-dev)
  - ocamlgraph (might be found in package libocamlgraph-ocaml-dev)
  - ulex (might be found in package ocaml-ulex)

配置脚本声明丢失的软件包都安装在我的系统中。

4

2 回答 2

2

关于从源代码编译 Opa,这是我几个月前做出的回答:

  • git 克隆https://github.com/MLstate/opalang.git
  • cd opalang
  • 依赖项/installation_helper.sh --prefix ~/Opa
  • 在 ~/.profile 中更改 PATH : export PATH=~/Opa/bin:$PATH
  • 重新获取您的 .bashrc 资源: source ~/.profile
  • ./configure -prefix ~/Opa
  • 全部安装
  • 你的新 opa 编译器应该在 ~/Opa/bin :)
于 2011-12-10T11:57:56.260 回答
1

Giacomo,您所指的示例来自即将发布的Opa S4 版本的文档。它使用将在该版本中引入的 Opa 的新语法。如果要编译它,则需要使用 S4 的预览版,即按照此处的说明进行操作(即,您需要 Opa build 1024 或更高版本并使用--parser js-like选项编译)。希望有帮助。

PS你已经安装的版本(S3.5建687不包括S4的预览版)。

于 2011-12-10T09:12:02.487 回答