On 8 mars 2012, at 17:25, Jérémie Dimino wrote:

> Le Thu, 8 Mar 2012 17:16:30 +0100,
> Gabriel Scherer <gabriel.sche...@gmail.com> a écrit :
> 
>> This error is not Mac-related (I can reproduce it on my Debian).
>> I believe it is a result from the "link-by-need" semantics of the .cma
>> and .cmxa: loader.ml does not explicitly depend on test, so when
>> producing the executable test.cmxa isn't linked (modules included
>> .cm{x,}a, contrarily to .cm{x,o}, are only linked when they are a
>> runtime dependency of one of the other modules).
>> 
>> I can remove the error by either:
>> - compiling to "test.cmx" instead of "test.cmxa"
>> - or adding a dummy dependency in loader.ml:
>>    let () = ignore (Test.f)
> 
> You can also use -linkall for building loader.native. In fact -linkall
> should always be used when you are using dynlink plugins.

That was it. Thanks a lot!

Alan

-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa-roc.inria.fr/wws/info/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Reply via email to