fdopen / opam-repository-mingw

windows package repository for OPAM (mingw and msvc)
https://fdopen.github.io/opam-repository-mingw/
Creative Commons Zero v1.0 Universal
96 stars 34 forks source link

camomille failure? #19

Closed samoht closed 8 years ago

samoht commented 8 years ago

See https://ci.appveyor.com/project/avsm/ocaml-github/build/1.0.24#L474

#=== ERROR while compiling camomile.0.8.5 =====================================#
# opam-version         1.3.0~dev (496e53587737b46b14f284e4bf420059e1a4125b)
# os                   win32
# command              make
# path                 C:/cygwin/home/appveyor/.opam/4.02.3+mingw64c/build/camomile.0.8.5
# exit-code            2
# env-file             C:/cygwin/home/appveyor/.opam/4.02.3+mingw64c/build/camomile.0.8.5\camomile-324-f33fa5.env
# stdout-file          C:/cygwin/home/appveyor/.opam/4.02.3+mingw64c/build/camomile.0.8.5\camomile-324-f33fa5.out
# stderr-file          C:/cygwin/home/appveyor/.opam/4.02.3+mingw64c/build/camomile.0.8.5\camomile-324-f33fa5.err
### stdout ###
# [...]
# ocamlyacc -v toolslib/colParser.mly
# ocamlc.opt -g -c -noassert -I internal -I public -I toolslib -I . toolslib/colParser.mli
# ocamlyacc -v toolslib/colParser.mly
# ocamlopt.opt -g -c -ccopt -L/usr/lib/w32api  -noassert -I internal -I public -I toolslib -I . toolslib/colParser.ml
# ocamllex.opt toolslib/colLexer.mll
#49 states, 2442 transitions, table size 10062 bytes
# ocamlopt.opt -g -c -ccopt -L/usr/lib/w32api  -noassert -I internal -I public -I toolslib -I . toolslib/colLexer.ml
# ocamlopt.opt -g -ccopt -L/usr/lib/w32api  -noassert -I internal -I public -I toolslib -I . -a -o toolslib.cmxa public/unicodeString.cmx configInt.cmx internal/uReStrParserType.cmx internal/database.cmx camomileDefaultConfig.cmx internal/bitsvect.cmx internal/bytesvect.cmx internal/avlTree.cmx internal/iSet.cmx internal/iMap.cmx internal/tbl31.cmx internal/byte_labeled_dag.cmx internal/xArray.[...]
# ocamlopt.opt -g -c -ccopt -L/usr/lib/w32api  -noassert -I internal -I public -I toolslib -I . tools/parse_unidata.ml
# ocamlopt.opt -g -ccopt -L/usr/lib/w32api  -noassert -I internal -I public -I toolslib -I . -o tools/parse_unidata.opt bigarray.cmxa str.cmxa toolslib.cmxa tools/parse_unidata.cmx
# Makefile:216: recipe for target 'tools/parse_unidata.opt' failed
# rm toolslib/colLexer.ml internal/uReStrLexer.ml toolslib/colParser.mli toolslib/colParser.ml
### stderr ###
# ** Cannot resolve symbols for descriptor object:
# [...]
#  LoadLibraryExA
#  MapViewOfFile
#  QueryPerformanceCounter
#  SearchPathA
#  SetConsoleCtrlHandler
#  SetFilePointer
#  UnmapViewOfFile
#  VirtualProtect
# File "caml_startup", line 1:
# Error: Error during linking
# make: *** [tools/parse_unidata.opt] Error 2

Any idea what that means?

fdopen commented 8 years ago

Hopefully fixed with https://github.com/fdopen/opam-repository-mingw/commit/2b929bbb391db706524d9be67555847c6bf35f3c The culprit is probably https://github.com/fdopen/opam-repository-mingw/commit/2b929bbb391db706524d9be67555847c6bf35f3c#diff-5d37b1330a4be9bf3f496d2ce92a162aR56 If gcc and the cygwin development files are installed and the configure scripts adds the result to the library search path, flexlink will try to link the wrong library.

Perhaps I should install a programs called gcc,ar,cpp, etc. to $(opam config var bin) during installation, in order to hide wrong programs.