2016-05-04 122 views
0

我一直在研究OCaml的LLVM萬花筒教程。在third part of the tutorial,我的文件夾中LLVM教程OCaml編譯彙編程序錯誤

OCaml-Kaleidoscope\Chapter3 

ocamlbuild toy.byte 

在Cygwin上編譯時,我遇到一個問題,導航到示例代碼。這是本教程中編譯的代碼。

我得到的錯誤是

mkdir 'C:\Users\setup\Compiler\llvm\examples\OCaml-Kaleidoscope\Chapter3\_build' 
''ocamlopt.opt unix.cmxa -I 'C:\OCaml\lib\ocamlbuild' 'C:\OCaml\lib\ocamlbuild/ocamlbuildlib.cmxa' myocamlbuild.ml 'C:\OCaml\lib\ocamlbuild/ocamlbuild.cmx' -o myocamlbuild.exe 
'x86_64-w64-mingw32-as' is not recognized as an internal or external command, 
operable program or batch file. 
File "myocamlbuild.ml", line 1: 
Error: Assembler error, input left in file C:\cygwin64\tmp\camlasmc2c035.s 
Exit code 2 while executing this command: 
''ocamlopt.opt unix.cmxa -I 'C:\OCaml\lib\ocamlbuild' 'C:\OCaml\lib\ocamlbuild/ocamlbuildlib.cmxa' myocamlbuild.ml 'C:\OCaml\lib\ocamlbuild/ocamlbuild.cmx' -o myocamlbuild.exe 

我使用LLVM和OCaml中的4.02.3版本的3.8.0版本從this link

我需要做些什麼來解決這個問題?

+0

你寫「這個鏈接」,但沒有鏈接。你使用了哪個OCaml安裝程序? – gasche

+0

我修復了這個鏈接。 – CuriousStudent

回答

1

仔細閱讀錯誤消息。它說:

'x86_64-w64-mingw32-as' is not recognized as an internal or external command, operable program or batch file. 

所以,你不安裝x86_64-w64-mingw32-as,爲MinGW64 Cygwin的交叉彙編。

如果您不熟悉自己解決這類問題,我強烈建議您不要使用Cygwin OCaml或MinGW OCaml,因爲您會遇到很多問題。使用Linux(可能在VirtualBox或Vmware等虛擬環境中)是使用OCaml + LLVM最平滑的方式。