[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#965248: ocamlmklib: Assumes `ld` and provides no override



Package: ocaml-nox
Version: 4.05.0-11

OCAML is a major cross-building problem.

Appears ocamlmklib is executing `ocamlc` to do compiling/linking.  The
man page for `ocamlc` states:

       -cc ccomp
              Use ccomp as the C linker when linking in "custom runtime"  mode
              (see  the -custom option) and as the C compiler for compiling .c
              source files.

Yet despite this it appears `ocamlc` is directly calling `ld` and this
option doesn't change that behavior.  `ocamlc` likely also needs a -ld
option to override the linker choice.

Ideally ocamlc would also try the target triplet -cc/-ld before trying
bare `cc` or `ld`.  Mainly try `x86_64-linux-gnu-cc` before `cc` and
`x86_64-linux-gnu-ld` before `ld`.

Further `ocamlmklib` and likely nearly every other ocaml-nox executable
needs options to propogate values to these `ocamlc` options.

Additionally `ocamlc -verbose` provided basically no useful information
to figure out what commands were being run behind the scenes.

ocaml-nox badly needs some work to allow for cross-building of packages
which use OCAML.


-- 
(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \BS (    |         ehem+sigmsg@m5p.com  PGP 87145445         |    )   /
  \_CS\   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445


Reply to: