소프트웨어를 업데이트 한 실수로 OUnit 테스트를 실행할 수 없습니다.모듈 케이스 이름 혼란
간단한 REPL 세션으로 문제를 해결할 수 있다고 생각합니다. 내가 잘못 뭘하는지
$ ocaml -I /opt/local/lib/ocaml/site-lib/oUnit OCaml version 4.01.0 # Ounit.assert_equal;; Error: Wrong file naming: /opt/local/lib/ocaml/site-lib/oUnit/ounit.cmi contains the compiled interface for Ounit when OUnit was expected # OUnit.assert_equal;; Error: Reference to undefined global `OUnit'
어떤 아이디어?
나는 파일 시스템이 기본 case-insensitive/case-preserving 인 Mac 랩톱에서이 파일을 실행하고 있지만 포함 경로의 경우에는 딩크가 도움이되지 않습니다. 당신의 OS가 파일 이름에 경우를 구분하지 않기 때문에
ocamlbuild \ -libs \ nums,str,unix,oUnit,graph \ -cflags \ -g,-w,+a-4,-warn-error,+a-4,-I,/opt/local/lib/ocaml/site-lib/oUnit,-I,/opt/local/lib/ocaml/site-lib/ocamlgraph \ -lflags \ -g,-I,/opt/local/lib/ocaml/site-lib/oUnit,-I,/opt/local/lib/ocaml/site-lib/ocamlgraph \ ./AllTests.native Error: No implementations provided for the following modules: OUnitCore referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitLoggerStd referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitUtils referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitConf referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitAssert referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitBracket referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitTest referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitRunner referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitChooser referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitLogger referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2), /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit) OUnitTestData referenced from /opt/local/lib/ocaml/site-lib/oUnit/oUnit.cmxa(OUnit2) Command exited with code 2. Compilation unsuccessful after building 646 targets (645 cached) in 00:00:02.
감사에 의해 생성되는
입니다. 내 REPL이 문제 전체를 재현하지 않는 것처럼 보입니다. 'ocamlbuild'를 링크 시키려면 어떻게해야할까요? '-libs'리스트에'ounitadvanced'가 필요합니까? –