2011-12-10 50 views
2

我知道還有另一個帖子關於這個,但是,我有一個不同於Opa won't compile hello_web.opa的錯誤。opa:無法編譯你好聊天演示(另一個錯誤)

當試圖編譯hello_chat.opa樣品3. Hello, chat,我得到以下錯誤:

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(opa_1.0s3.5 + build687_amd64.stable.deb)。

我也試圖從源代碼構建它,配置步驟抱怨說缺少一些代碼。可能這是解決問題的關鍵嗎?

[email protected]:~/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) 

配置腳本聲明丟失的軟件包全部安裝在我的系統中。

回答

1

Giacomo,你所指的例子來自於即將發佈的 Opa S4版本的文檔。它使用了將在該版本中引入的Opa新語法。如果你想編譯它,那麼你將需要使用S4的預覽,也就是說,按照指令here(即你需要Opa建立1024或更高版本,並編譯--parser js-like選項)。希望有所幫助。

P.S.你已經安裝的版本(S3.5內置的687確實是而不是包括S4的預覽版)。

+0

感謝您的幫助...所以,你有什麼建議的學習這個有趣的環境?我應該安裝** S4 **並關注文檔樣本,或者有一個地方可以解釋以前的語法?我之前沒有Opa的經驗,所以也許最好是開始玩新版本(_I think _)...無論如何,如果可能的話,我想要一個建議。再次感謝。問候,賈科莫 – gsscoder

+1

是的,我想我建議安裝一些最新版本的Opa,其中包括S4預覽和玩。它仍然是WIP,所以你可能會在路上遇到一些顛簸,但如果發生這種情況,只需在名單上給我們留言,我們會盡力提供幫助。 – akoprowski

+0

再次感謝你,我會盡力玩這個令人興奮的技術!問候,賈科莫 – gsscoder

2

約從源代碼編譯OPA,這是一個答案我幾個月前提出:

  • 混帳克隆https://github.com/MLstate/opalang.git
  • CD opalang
  • 依賴性/ installation_helper.sh --prefix〜/ OPA
  • 在〜/ .profile中更改PATH:export PATH =〜/ Opa/bin:$ PATH
  • re-source your.bashrc:source〜/ .profile
  • 的./configure -prefix〜/ OPA
  • 使所有安裝
  • 您的新OPA的編譯器應該在〜/ OPA /箱:)
+1

這是您自己安裝每個依賴項的替代方法:) – Fred

+0

我也會嘗試從源代碼編譯它...感謝支持,Fred!問候,賈科姆 – gsscoder

+0

嗨,@弗雷德,我遇到了installation_helper.sh問題(例如發佈一個錯誤):'[PACKAGE:ulex(download)] - 2011-12-12 07:56:01-- http: //www.cduce.org/download/ulex-1.1.tar.gz Risoluzione di www.cduce.org ... 81.194.35.6 Connessione a www.cduce.org | 81.194.35.6 |:80 ... connesso 。 HTTP richiesta inviata,attesa di risposta ... 200 OK Lunghezza:20347(20K)[application/x-gzip] Il file del serverèpiùvecchio del file locale「ulex-1.1.tar.gz」 - non viene scaricato.'意大利語中的錯誤信息表示_遠程文件比本地文件舊,因此它不會被下載。問候,G。 – gsscoder