Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ocaml opam升级想要降级一系列包_Ocaml_Opam - Fatal编程技术网

Ocaml opam升级想要降级一系列包

Ocaml opam升级想要降级一系列包,ocaml,opam,Ocaml,Opam,我刚刚尝试了“opam升级”,得到了(最终摘要): 降级34个包裹让我很紧张。它为什么要这样做 它想要降级的包的一些示例: 将llvm.3.2降级为3.1 将ocamlfind.1.4.0降级至1.3.3[位字符串、camltc、ezjsonm、fat文件系统、google驱动器ocamlfuse、merlin、mirage block xen、mirage控制台xen、mirari、utop需要] 将SPOC.130624降级至121217 将bitstring.2.0.4降级为2.0.3

我刚刚尝试了“opam升级”,得到了(最终摘要):

降级34个包裹让我很紧张。它为什么要这样做

它想要降级的包的一些示例:

  • 将llvm.3.2降级为3.1
  • 将ocamlfind.1.4.0降级至1.3.3[位字符串、camltc、ezjsonm、fat文件系统、google驱动器ocamlfuse、merlin、mirage block xen、mirage控制台xen、mirari、utop需要]
  • 将SPOC.130624降级至121217
  • 将bitstring.2.0.4降级为2.0.3
  • 将camlzip.1.05降级至1.04[谷歌硬盘ocamlfuse要求]

  • 将ezjsonm.0.2.0降级为0.1.0

  • 将gapi ocaml.0.2.1降级至0.2[谷歌硬盘ocamlfuse要求]
  • 将merlin.1.5降级至1.3
  • 将utop.1.10降级至1.9
当然,这让我有点紧张,所以我回答“n”。怎么解决这个问题

opam版本为1.1.0

编辑:我想我可以发布整个结果:

$ opam upgrade
*The brute-force exploration algorithm timed-out [108 states, 5s].
You might need to add explicit version constraints to your request to get a better answer.*

The following actions will be performed:
 - install obuild.0.0.2 [required by mirari]
 - downgrade llvm.3.2 to 3.1
 - downgrade ocamlfind.1.4.0 to 1.3.3 [required by bitstring, camltc, ezjsonm, fat-filesystem,     google-drive-ocamlfuse, merlin, mirage-block-xen, mirage-console-xen, mirari, utop]
 - downgrade SPOC.130624 to 121217
 - downgrade bitstring.2.0.4 to 2.0.3
 - downgrade camlzip.1.05 to 1.04 [required by google-drive-ocamlfuse]
 - recompile camomile.0.8.5 [use ocamlfind]
 - recompile cmdliner.0.9.2 [use ocamlfind]
 - downgrade cryptokit.1.9 to 1.6 [required by google-drive-ocamlfuse]
 - recompile dypgen.20120619-1 [use ocamlfind]
 - recompile easy-format.1.0.1 [use ocamlfind]
 - recompile extlib-compat.1.6.1 [use ocamlfind]
 - downgrade fd-send-recv.1.0.1 to 1.0.0 [required by mirari]
 - downgrade herelib.109.35.02 to 109.35.00 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
 - recompile ipaddr.1.0.0 [use ocamlfind]
 - recompile lablgtk.2.16.0 [use ocamlfind]
 - recompile menhir.20130912 [use ocamlfind]
 - recompile mirage-types.1.0.0 [use ocamlfind]
 - recompile ocamlfuse.2.7.1-cvs [use ocamlfind]
 - downgrade ocurl.0.6.0 to 0.5.5 [required by google-drive-ocamlfuse]
 - recompile omake.0.9.8.6-0.rc1 [use ocamlfind]
 - recompile omd.0.9.0 [use ocamlfind]
 - recompile optcomp.1.5 [use ocamlfind]
 - downgrade ounit.2.0.0 to 1.1.2 [required by camltc, fat-filesystem, mirage-block-xen, mirage-console-xen]
 - recompile parmap.1.0-rc3 [use ocamlfind]
 - recompile pipebang.109.28.02 [use ocamlfind]
 - recompile re.1.2.1 [use ocamlfind]
 - recompile react.0.9.4 [use ocamlfind]
 - downgrade res.4.0.4 to 3.2.0 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
 - recompile sqlite3-ocaml.2.0.5 [use ocamlfind]
 - recompile ssl.0.4.6 [use ocamlfind]
 - downgrade type_conv.109.53.02 to 109.53.00 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
 - recompile ulex.1.1 [use ocamlfind]
 - recompile uutf.0.9.3 [use ocamlfind]
 - downgrade xmlm.1.2.0 to 1.1.1 [required by google-drive-ocamlfuse]
 - downgrade biniou.1.0.6 to 1.0.5 [required by google-drive-ocamlfuse, merlin]
 - recompile tuntap.0.7.0 [use ocamlfind]
 - recompile ocamldot.1.0 [use ocamlfind]
 - recompile ocamlgraph.1.8.3 [use ocamlfind]
 - recompile mirage-clock-unix.1.0.0 [use ocamlfind]
 - recompile mirage-clock-xen.1.0.0 [use ocamlfind]
 - downgrade camlimages.4.1.1 to 4.0.1
 - downgrade ocplib-endian.0.4 to 0.3 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
- downgrade uri.1.3.11 to 1.3.10
- recompile zed.1.2 [use ocamlfind]
- downgrade lwt.2.4.4 to 2.4.3 [required by camltc, fat-filesystem, mirage-block-xen, mirage-console-xen, utop]
- recompile ocamlnet.3.7.3 [use ocamlfind]
- recompile bin_prot.109.53.02 [use ocamlfind]
- recompile comparelib.109.27.02 [use ocamlfind]
- recompile dyntype.0.9.0 [use ocamlfind]
- downgrade fieldslib.109.20.02 to 109.20.00 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
 - recompile pa_ounit.109.53.02 [use ocamlfind]
 - downgrade sexplib.109.55.02 to 109.55.00 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
 - downgrade variantslib.109.15.02 to 109.15.00 [required by fat-filesystem, mirage-block-xen, mirage-console-xen]
 - recompile jsonm.0.9.1 [use ocamlfind]
- downgrade yojson.1.1.6 to 1.0.3 [required by google-drive-ocamlfuse, merlin]
 - downgrade mirari.0.9.7 to 0.9.3
 - recompile patoline.0.1 [use ocamlfind]
 - upgrade camltc.0.8.1 to 0.8.2
 - downgrade lambda-term.1.5 to 1.4 [required by utop]
 - recompile cow.0.9.1 [use ocamlfind]
 - recompile pa_bench.109.55.02 [use ocamlfind]
 - recompile custom_printf.109.27.02 [use ocamlfind]
 - recompile typerep.109.55.02 [use ocamlfind]
 - downgrade ezjsonm.0.2.0 to 0.1.0
 - downgrade gapi-ocaml.0.2.1 to 0.2 [required by google-drive-ocamlfuse]
 - downgrade merlin.1.5 to 1.3
 - downgrade utop.1.10 to 1.9
- recompile core_kernel.109.55.02 [use ocamlfind]
 - downgrade google-drive-ocamlfuse.0.5.2 to 0.4.4
 - recompile pa_test.109.53.02 [use ocamlfind]
 - recompile core.109.55.02 [use ocamlfind]
- recompile async_core.109.55.02 [use ocamlfind]
- recompile async_unix.109.55.02 [use ocamlfind]
 - recompile async_extra.109.55.02 [use ocamlfind]
- recompile async.109.53.02 [use ocamlfind]
 - recompile cstruct.1.0.1 [use ocamlfind]
 - recompile gen_server.2.0.1 [use ocamlfind]
 - upgrade cohttp.0.9.14 to 0.9.16
 - recompile io-page-unix.0.9.9 [use ocamlfind]
 - recompile io-page-xen.0.9.9 [use ocamlfind]
 - recompile mirage-fs-unix.1.0.0 [use ocamlfind]
 - downgrade shared-memory-ring.1.0.0 to 0.4.3 [required by mirage-block-xen, mirage-console-xen]
 - recompile xenstore.1.2.5 [use ocamlfind]
 - recompile cowabloga.0.0.3 [use ocamlfind]
 - recompile mirage-http-unix.1.0.0 [use ocamlfind]
 - downgrade mirage-block-unix.1.2.0 to 1.1.0 [required by fat-filesystem]
 - recompile mirage-net-unix.1.0.0 [use ocamlfind]
 - upgrade mirage.1.0.3 to 1.0.4
 - recompile mirage-unix.1.0.0 [use ocamlfind]
 - recompile mirage-xen.1.0.0 [use ocamlfind]
 - downgrade fat-filesystem.0.10.0 to 0.6.2
 - recompile mirage-console-unix.1.0.0 [use ocamlfind]
 - recompile mirage-tcpip-unix.0.9.5 [use ocamlfind]
 - downgrade mirage-block-xen.1.0.0 to 0.4.0
 - downgrade mirage-console-xen.1.0.1 to 1.0.0
  - recompile mirage-www.1.0.0 [use ocamlfind]
1 to install | 59 to reinstall | 3 to upgrade | 34 to downgrade | 0 to remove
Do you want to continue ? [Y/n] 

长话短说:OPAM对于依赖项有一种非常有表现力的语言,几个解算器都能理解。默认情况下,OPAM中包含的小而简单的解算器有点像黑客,在用力推的时候会出现这种可怕的行为。此时,您应该安装一个外部解算器,如
aspcud
,这样做会更好

罗伯托·迪·科斯莫(Roberto Di Cosmo)上个月向caml名单发送的一封长邮件中有更多详细信息:


快速修复:给解算器更多时间

export OPAMSOLVERTIMEOUT=60
然后重试:
opam升级

添加到gasche的回答中:描述了外部依赖性求解器的设置

编辑:如果您在opam版本1.1.1中遇到这种情况,请尝试升级到更新的版本。升级解决了我的问题

export OPAMSOLVERTIMEOUT=60