Macos OCamlfind生成失败
当我尝试使用Macos OCamlfind生成失败,macos,ocaml,ocamlfind,Macos,Ocaml,Ocamlfind,当我尝试使用opam install ocamlfind安装ocamlfind时,编译失败,并显示以下消息: #=== ERROR while installing ocamlfind.1.5.5 ===================================# # opam-version 1.2.0 # os darwin # command make all # path /Users/MTGAP/.opam/system/build/
opam install ocamlfind
安装ocamlfind
时,编译失败,并显示以下消息:
#=== ERROR while installing ocamlfind.1.5.5 ===================================#
# opam-version 1.2.0
# os darwin
# command make all
# path /Users/MTGAP/.opam/system/build/ocamlfind.1.5.5
# compiler system (4.02.1)
# exit-code 2
# env-file /Users/MTGAP/.opam/system/build/ocamlfind.1.5.5/ocamlfind-21707-c61e7b.env
# stdout-file /Users/MTGAP/.opam/system/build/ocamlfind.1.5.5/ocamlfind-21707-c61e7b.out
# stderr-file /Users/MTGAP/.opam/system/build/ocamlfind.1.5.5/ocamlfind-21707-c61e7b.err
### stdout ###
# ...[truncated]
# ocamlc -I +compiler-libs -c fl_package_base.mli
# ocamlc -I +compiler-libs -g -c fl_package_base.ml
# ocamlc -I +compiler-libs -c findlib.mli
# ocamlc -I +compiler-libs -g -c findlib.ml
# ocamlc -I +compiler-libs -g -c fl_args.ml
# ocamlc -I +compiler-libs -a -o findlib.cma findlib_config.cmo fl_split.cmo fl_metatoken.cmo fl_meta.cmo fl_metascanner.cmo fl_topo.cmo fl_package_base.cmo findlib.cmo fl_args.cmo
# ocamlc -I +compiler-libs -g -c ocaml_args.ml
# ocamlc -I +compiler-libs -g -c frontend.ml
# ocamlc -I +compiler-libs -custom -o ocamlfind -g findlib.cma unix.cma \
# ocaml_args.cmo frontend.cmo
### stderr ###
# ...[truncated]
# Undefined symbols for architecture x86_64:
# "start", referenced from:
# implicit entry/start for main executable
# (maybe you meant: _caml_heap_start, _caml_young_start , _caml_start_code , _caml_startup_code )
# ld: symbol(s) not found for architecture x86_64
# clang: error: linker command failed with exit code 1 (use -v to see invocation)
# File "_none_", line 1:
# Error: Error while building custom runtime system
# make[1]: *** [ocamlfind] Error 2
make: *** [all] Error 2
根据过去的堆栈溢出回答,如果没有安装m4,此安装有时会失败,但我已经安装了m4,并且在我的路径中,因此这不是问题。看起来您的系统或软件包管理器中存在问题。首先,我建议不要使用系统编译器,而是从头开始安装新的编译器:
opam switch install 4.02.1
eval `opam config env`
如果这不起作用,请尝试查看您的编译器工具包,并确保链接器与编译器来自同一个工具包(最多,所有工具都应链接到默认的OS X工具包)您是否通过brew安装了ocaml/opam?Edgararroutiounian:在这两方面都是。我尝试运行了
opam switch install 4.02.1
。它失败了,并说确保正确安装了C编译器gcc-O。
gcc安装在我的机器上。我在网上找到了一些关于此错误消息的信息,但它看起来不相关。它是使用macports
安装的吗?我建议您使用X代码开发工具(实际上安装llvm)进行安装,因为它是最健壮的解决方案。而且,当您调用opam时,您确定已安装的gcc在路径中可见吗?