1

opamをインストールし、uint パッケージをインストールしましたしかし、私がこのようなことをしようとすると

File : Hello.ml
let ash(mystring) = (
    let basis =   uint64.of_string("0xcbf29ce484221325") in
    Printf.printf "Function Finished" ;
);;

ash("Hello");;

エラーが発生します

Error: Unbound value uint64

私が見逃している可能性があるものについて何か提案はありますか? 私はOCamlとopamが初めてです

次のステートメントを使用して、OSX ターミナルでコードをコンパイルしました。

ocaml Hello.ml 
4

1 に答える 1

1

いくつかの問題があります。引数を値のタプルにするつもりでない限り、引数を () で囲む必要はありません (おそらく、後で学習するトピックです)。

Plainocamlはインタプリタのようなもので、インストールされたコードがどこにあるかを知りません (おそらく、インタプリタが最初に独自に検索する場所がいくつかある Python が好きなのかもしれません)。

let ash mystring =
  let basis = Uint64.of_string "0xcbf29ce484221325" in
  Printf.printf "Function Finished"

let () =
  ash "Hello"

これが hello.ml と呼ばれると仮定すると、次のようにコンパイルできます。

ocamlfind ocamlc -package uint -linkpkg hello.ml -o Test

(これはocamfindラッパーを使用しocamlcており、あなたを呼び出して、uint パッケージを使用し、それを最終的な実行可能ファイルにリンクするように指示しますTest)

そしてそれを実行します

./Test
于 2015-09-20T20:14:44.307 に答える