On Thu, Apr 15, 2010 at 3:39 AM, Lally Singh <lally.si...@gmail.com> wrote:
> Is it possible to statically link libcamlrun.lib, so it'll work with > libcmtd.lib instead of msvcrt.dll? I've tried: > > FLEXLINK=flexlink -merge-manifest -link /nodefaultlib:msvcrt.lib -link > libcmtd.lib Please don't use "brute force" methods. If you need statically linked MSVC runtime, just replace /MD with /MT (or /MTd) in config/Makefile. > in config/Makefile, and it all builds. However, I still get: > > libcamlrun.lib(sys.obj) : error LNK2019: unresolved external symbol > __imp__system referenced in function _caml_sys_system_command > libcamlrun.lib(floats.obj) : error LNK2019: unresolved external symbol > __imp__frexp referenced in function _caml_frexp_float > libcamlrun.lib(floats.obj) : error LNK2019: unresolved external symbol > __imp__modf referenced in function _caml_modf_float > libcamlrun.lib(startup.obj) : error LNK2019: unresolved external > symbol __imp__sscanf referenced in function _scanmult > libcamlrun.lib(startup.obj) : error LNK2019: unresolved external > symbol __imp___beginthread referenced in function _caml_main > > Any thoughts? Ocaml expects C runtime functions exported from a DLL (they have __implib prefix). No surprise - MSVC runtime is not a link time choice and requires correct compile time flags. > Sadly I have to do it this way -- we're linking a -output-obj'd .obj > into our DLL (which must be statically linked to the runtime) and then > linking libcamlrun.lib to that -- or at least hoping to. > > Thanks in advance for any help! - Dmitry Bely _______________________________________________ Caml-list mailing list. Subscription management: http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list Archives: http://caml.inria.fr Beginner's list: http://groups.yahoo.com/group/ocaml_beginners Bug reports: http://caml.inria.fr/bin/caml-bugs