-
Notifications
You must be signed in to change notification settings - Fork 45
Open
Description
Running npm install fails when OCaml 4.04.0 is installed globally:
$ opam switch
-- -- 3.07 Official 3.07 release
-- -- 3.08.0 Official 3.08.0 release
-- -- 3.08.1 Official 3.08.1 release
-- -- 3.08.2 Official 3.08.2 release
-- -- 3.08.3 Official 3.08.3 release
-- -- 3.08.4 Official 3.08.4 release
-- -- 3.09.0 Official 3.09.0 release
-- -- 3.09.1 Official 3.09.1 release
-- -- 3.09.2 Official 3.09.2 release
-- -- 3.09.3 Official 3.09.3 release
-- -- 3.10.0 Official 3.10.0 release
-- -- 3.10.1 Official 3.10.1 release
-- -- 3.10.2 Official 3.10.2 release
-- -- 3.11.0 Official 3.11.0 release
-- -- 3.11.1 Official 3.11.1 release
-- -- 3.11.2 Official 3.11.2 release
-- -- 3.12.0 Official 3.12.0 release
-- -- 3.12.1 Official 3.12.1 release
-- -- 4.00.0 Official 4.00.0 release
-- -- 4.00.1 Official 4.00.1 release
-- -- 4.01.0 Official 4.01.0 release
-- -- 4.02.0 Official 4.02.0 release
-- -- 4.02.1 Official 4.02.1 release
-- -- 4.02.2 Official 4.02.2 release
4.02.3 C 4.02.3 Official 4.02.3 release
-- -- 4.03.0 Official 4.03.0 release
-- -- 4.04.0 Official 4.04.0 release
system I system System compiler (4.04.0)
# 244 more patched or experimental compilers, use '--all' to show
$ opam switch system
$ eval `opam config env`
$ git clone https://github.com/reasonml/ReasonProject HelloReason
$ cd HelloReason
$ npm install
# ... later
ocamlc -I +compiler-libs -g -c fl_lint.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 fl_lint.cmo
ocamlc -I +compiler-libs -g -c ocaml_args.ml
ocamlc -I +compiler-libs -g -c frontend.ml
File "frontend.ml", line 1787, characters 16-29:
Warning 3: deprecated: String.create
Use Bytes.create instead.
ocamlc -I +compiler-libs -o ocamlfind -g findlib.cma unix.cma \
ocaml_args.cmo frontend.cmo
File "_none_", line 1:
Error: Error on dynamically loaded library: /usr/local/lib/ocaml/stublibs/dllunix.so: dlopen(/usr/local/lib/ocaml/stublibs/dllunix.so, 138): Symbol not found: _caml_string_is_c_safe
Referenced from: /usr/local/lib/ocaml/stublibs/dllunix.so
Expected in: flat namespace
in /usr/local/lib/ocaml/stublibs/dllunix.so
make[1]: *** [ocamlfind] Error 2
make: *** [all] Error 2
[email protected] /Users/shane.logsdon/Code/reason/HelloReason
├─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/merlin.git#5b236062b3cceff3e653ba47283159cf6895a93b)
│ ├─┬ @opam-alpha/[email protected]
│ │ └─┬ [email protected] (git://github.com/npm-opam/yojson.git#a72727dd8899c53153fd8a7cea06c626d0a71faf)
│ │ ├─┬ @opam-alpha/[email protected]
│ │ │ └─┬ [email protected] (git://github.com/npm-opam/biniou.git#198ece6041aa0853bc1637475796840b3daae5a9)
│ │ │ └─┬ @opam-alpha/[email protected]
│ │ │ └── [email protected] (git://github.com/npm-opam/conf-which.git#0b798e035ea41e43744ff28075b15d1a5dc9ac99)
│ │ ├─┬ @opam-alpha/[email protected]
│ │ │ └─┬ [email protected] (git://github.com/npm-opam/cppo.git#f93baf17d8099c5866df939264ddddb6457aa7d2)
│ │ │ └── @opam-alpha/[email protected]
│ │ └─┬ @opam-alpha/[email protected]
│ │ └── [email protected] (git://github.com/npm-opam/easy-format.git#9a61ee2ca3cff40b50a36dc66dcb7761d096a451)
│ ├─┬ [email protected] (git+https://github.com/yunxing/opam-installer-bin.git#689ede681217f76fb2f82a9f4528e192a5b543ba)
│ │ ├── [email protected] (git+https://github.com/npm-ml/dependency-env.git#94c75aff3a71587afb570d89bcf2eef7996bb67f)
│ │ └── [email protected] (git+https://github.com/yunxing/nopam.git#7cd19f068ac9aaf75010cd6961f7c65c779a1d4a)
│ └── [email protected] (git+https://github.com/yunxing/substs.git#fd480dcdb4aed3fa9128fd819a546e3a7770040f)
├─┬ @opam-alpha/[email protected]
│ └── [email protected] (git+https://github.com/npm-opam/ocaml.git#0bb98be8e5233a02282ed8de0c8965677ddbde33)
├─┬ [email protected]
│ └── [email protected]
├── [email protected]
└── [email protected]
npm ERR! Darwin 15.6.0
npm ERR! argv "/usr/local/Cellar/node/7.3.0/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v7.3.0
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! [email protected] postinstall: `eval $(dependencyEnv) && nopam && ./configure -no-camlp4 -bindir $opam_bin -sitelib $opam_lib -mandir $opam_man -config $opam_lib/findlib.conf -no-custom && make all && make opt && make install`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the [email protected] postinstall script 'eval $(dependencyEnv) && nopam && ./configure -no-camlp4 -bindir $opam_bin -sitelib $opam_lib -mandir $opam_man -config $opam_lib/findlib.conf -no-custom && make all && make opt && make install'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the ocamlfind-actual package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! eval $(dependencyEnv) && nopam && ./configure -no-camlp4 -bindir $opam_bin -sitelib $opam_lib -mandir $opam_man -config $opam_lib/findlib.conf -no-custom && make all && make opt && make install
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs ocamlfind-actual
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls ocamlfind-actual
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/shane.logsdon/Code/reason/HelloReason/npm-debug.log
Switching to 4.02.3 seems to correct the issue:
$ cd ..
$ rm -rf HelloReason
$ opam switch
-- -- 3.07 Official 3.07 release
-- -- 3.08.0 Official 3.08.0 release
-- -- 3.08.1 Official 3.08.1 release
-- -- 3.08.2 Official 3.08.2 release
-- -- 3.08.3 Official 3.08.3 release
-- -- 3.08.4 Official 3.08.4 release
-- -- 3.09.0 Official 3.09.0 release
-- -- 3.09.1 Official 3.09.1 release
-- -- 3.09.2 Official 3.09.2 release
-- -- 3.09.3 Official 3.09.3 release
-- -- 3.10.0 Official 3.10.0 release
-- -- 3.10.1 Official 3.10.1 release
-- -- 3.10.2 Official 3.10.2 release
-- -- 3.11.0 Official 3.11.0 release
-- -- 3.11.1 Official 3.11.1 release
-- -- 3.11.2 Official 3.11.2 release
-- -- 3.12.0 Official 3.12.0 release
-- -- 3.12.1 Official 3.12.1 release
-- -- 4.00.0 Official 4.00.0 release
-- -- 4.00.1 Official 4.00.1 release
-- -- 4.01.0 Official 4.01.0 release
-- -- 4.02.0 Official 4.02.0 release
-- -- 4.02.1 Official 4.02.1 release
-- -- 4.02.2 Official 4.02.2 release
4.02.3 I 4.02.3 Official 4.02.3 release
-- -- 4.03.0 Official 4.03.0 release
-- -- 4.04.0 Official 4.04.0 release
system C system System compiler (4.04.0)
# 244 more patched or experimental compilers, use '--all' to show
$ opam switch 4.02.3
$ eval `opam config env`
$ git clone https://github.com/reasonml/ReasonProject HelloReason
$ cd HelloReason
$ npm install
# ... later
> [email protected] postinstall /Users/shane.logsdon/Code/reason/HelloReason
> npm run reasonBuild
> [email protected] reasonBuild /Users/shane.logsdon/Code/reason/HelloReason
> eval $(dependencyEnv) && nopam && rebuild -I src ./src/Test.native 2>&1 | refmterr
/Users/shane.logsdon/Code/reason/HelloReason/node_modules/ocaml/bin/ocamldep.opt -modules -pp refmt -impl src/Test.re | tee src/Test.re.depends > src/Test.ml.depends
env OCAMLC="ocamlc.opt" /Users/shane.logsdon/code/reason/HelloReason/node_modules/reason/_build/ocamlfind/bin/rec -c -I src -pp refmt -o src/Test.cmo -intf-suffix .rei -impl src/Test.re
env OCAMLOPT="ocamlopt.opt" /Users/shane.logsdon/code/reason/HelloReason/node_modules/reason/_build/ocamlfind/bin/reopt -c -I src -pp refmt -o src/Test.cmx -intf-suffix .rei -impl src/Test.re
env OCAMLOPT="ocamlopt.opt" /Users/shane.logsdon/code/reason/HelloReason/node_modules/reason/_build/ocamlfind/bin/reopt src/Test.cmx -o src/Test.native
✔ Seems fine!
[email protected] /Users/shane.logsdon/Code/reason/HelloReason
├─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/merlin.git#5b236062b3cceff3e653ba47283159cf6895a93b)
│ └─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/yojson.git#a72727dd8899c53153fd8a7cea06c626d0a71faf)
│ └─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/biniou.git#198ece6041aa0853bc1637475796840b3daae5a9)
│ └─┬ @opam-alpha/[email protected]
│ └── [email protected] (git://github.com/npm-opam/conf-which.git#0b798e035ea41e43744ff28075b15d1a5dc9ac99)
├─┬ @opam-alpha/[email protected]
│ └── [email protected] (git+https://github.com/npm-opam/ocaml.git#0bb98be8e5233a02282ed8de0c8965677ddbde33)
├─┬ [email protected]
│ └── [email protected]
├── [email protected]
├── [email protected]
└─┬ [email protected]
├─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/BetterErrors.git#3a8c29bb67089b4b615ced135f3bd608be0e5aa0)
│ └─┬ @opam-alpha/[email protected]
│ └── [email protected] (git://github.com/npm-opam/ANSITerminal.git#787c809f7b3e0d6445b803805f81a74a2af7b503)
├─┬ @opam-alpha/[email protected]
│ └── [email protected] (git://github.com/npm-opam/easy-format.git#9a61ee2ca3cff40b50a36dc66dcb7761d096a451)
├─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/menhir.git#8d6905e8eeb4bedcec501a14fdc7a7d950f85874)
│ └── @opam-alpha/[email protected]
├─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git://github.com/npm-opam/merlin-extend.git#8d01d124db27f46a27e04f25d0e1c54bab0d0f48)
│ └─┬ @opam-alpha/[email protected]
│ └── [email protected] (git://github.com/npm-opam/cppo.git#f93baf17d8099c5866df939264ddddb6457aa7d2)
├─┬ @opam-alpha/[email protected]
│ └─┬ [email protected] (git+https://github.com/npm-opam/ocamlfind.git#f6ea48c7628210d477ead863d32feba2357b9afe)
│ └─┬ @opam-alpha/[email protected]
│ └── [email protected] (git://github.com/npm-opam/conf-m4.git#75e353ae7ae97a988319ddb0e97ecfa25bce4739)
├─┬ @opam-alpha/[email protected]
│ └── [email protected] (git://github.com/npm-opam/re.git#9da39424a8a4a12a768f90b1e5cc4401102b6834)
├── [email protected] (git+https://github.com/reasonml/dependency-env.git#94c75aff3a71587afb570d89bcf2eef7996bb67f)
├── [email protected] (git+https://github.com/reasonml/nopam.git#7cd19f068ac9aaf75010cd6961f7c65c779a1d4a)
├─┬ [email protected] (git+https://github.com/yunxing/opam-installer-bin.git#689ede681217f76fb2f82a9f4528e192a5b543ba)
│ ├── [email protected] (git+https://github.com/npm-ml/dependency-env.git#94c75aff3a71587afb570d89bcf2eef7996bb67f)
│ └── [email protected] (git+https://github.com/yunxing/nopam.git#7cd19f068ac9aaf75010cd6961f7c65c779a1d4a)
├── [email protected] (git+https://github.com/yunxing/substs.git#fd480dcdb4aed3fa9128fd819a546e3a7770040f)
└─┬ [email protected] (git+https://github.com/reasonml/utop-bin.git#5e9e322c1f264c0d9e8abb9f85e5472de1c8147d)
├── [email protected] (git+https://github.com/reasonml/camomile-bin.git#08f5d6115b76d46897af47b9ee8e70a55973b40f)
├─┬ [email protected] (git+https://github.com/reasonml/lambda-term-bin.git#72137b68f22af1fd2d1e52afbb02ff45b494908a)
│ └── [email protected] (git+https://github.com/reasonml/zed-bin.git#7d2f0677a4a73c1b51ecbf05589e1f7b5bd76705)
├── [email protected] (git+https://github.com/reasonml/lwt-bin.git#96859b56091d3b46d3c36e80522a137bb768fee5)
└── [email protected] (git+https://github.com/reasonml/react-bin.git#b9868712a9e76af9de52e726912bdd99f9a66e87)
I'm checking into the following things but wanted to get this logged beforehand:
- Remove all versions of OCaml and test
- Reinstall 4.04.0 to see if the issue persists
- If so, Reinstall 4.02.3 to see if the issue is resolved again by switching to that version.
Edit: Adding version numbers:
- Mac OS X 10.11.6
- npm 3.10.10
- node v7.3.0
- opam 1.2.2
Metadata
Metadata
Assignees
Labels
No labels