From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 68E147EEEF for ; Wed, 24 Jun 2015 00:10:42 +0200 (CEST) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of kennethadammiller@gmail.com) identity=pra; client-ip=209.85.218.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="kennethadammiller@gmail.com"; x-sender="kennethadammiller@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of kennethadammiller@gmail.com designates 209.85.218.52 as permitted sender) identity=mailfrom; client-ip=209.85.218.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="kennethadammiller@gmail.com"; x-sender="kennethadammiller@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-oi0-f52.google.com) identity=helo; client-ip=209.85.218.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="kennethadammiller@gmail.com"; x-sender="postmaster@mail-oi0-f52.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CAAgCR2IlVlDTaVdFbgkWBfgaDGKoCmDgCgUUHTAEBAQEBARIBAQEBBwsLCR8whCMBAQMBEhEdARseAwELBgMCCzcCAiEBAREBBQEcBhMih3cBAwoImU6Qaz4xiz+Ba4J5iygKGScNV4UaAQEIAgEZAQUOizyCTYJAgmiBQwWTf4cvgkGBYZEdhU4SI4EMCReEJSIxgkgBAQE X-IPAS-Result: A0CAAgCR2IlVlDTaVdFbgkWBfgaDGKoCmDgCgUUHTAEBAQEBARIBAQEBBwsLCR8whCMBAQMBEhEdARseAwELBgMCCzcCAiEBAREBBQEcBhMih3cBAwoImU6Qaz4xiz+Ba4J5iygKGScNV4UaAQEIAgEZAQUOizyCTYJAgmiBQwWTf4cvgkGBYZEdhU4SI4EMCReEJSIxgkgBAQE X-IronPort-AV: E=Sophos;i="5.13,668,1427752800"; d="scan'208";a="137556893" Received: from mail-oi0-f52.google.com ([209.85.218.52]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 24 Jun 2015 00:10:41 +0200 Received: by oigb199 with SMTP id b199so17435946oig.3 for ; Tue, 23 Jun 2015 15:10:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=Ljdpg03RqIk1Pw6MfeP5ijfIzTi58O3wCJ+6RQu1LuQ=; b=lFFi24R5FzGDTCqNAYI++gP3u3BaB9WN+rwEUXdQcQrZLWKVt5endiRafu4FVAzPh2 gFf44ZMnb/6rKdpLfHhraCQl1848/6AKGqf6W8ffyBLEAa3h0wWMPPMVhM+FZG585wqo 8fuSam73ro2uATtvW+vg9OLlQaI8YMzVzCPE67EbtJAgdYqVKQ1ntmRAZRB/kpaRXGLE VAHr2sKqZw9a3i+wlYUX5pxX4hQaAoCCrTiPmhS5SKuTpS/YnXY+A8UK4rQ+6kFQuiT5 CBXFqwJsoWF9cXmIhIkaeTdAUmVqJBx5GuwKXVsHRa/a97DtSB/fklo2ev7mq5eAb7Jl oUrA== MIME-Version: 1.0 X-Received: by 10.202.206.202 with SMTP id e193mr515761oig.132.1435097439855; Tue, 23 Jun 2015 15:10:39 -0700 (PDT) Received: by 10.202.191.8 with HTTP; Tue, 23 Jun 2015 15:10:39 -0700 (PDT) In-Reply-To: References: Date: Tue, 23 Jun 2015 18:10:39 -0400 Message-ID: From: Kenneth Adam Miller To: caml users Content-Type: multipart/alternative; boundary=001a113ac7ea1eedd6051936a9c1 Subject: Re: [Caml-list] Library Compile Error --001a113ac7ea1eedd6051936a9c1 Content-Type: text/plain; charset=UTF-8 I fixed it. It was the package specification order. :( I wish there were a warning about that in the compiler output that mentions the lack of implementation that the compiler sees. On Tue, Jun 23, 2015 at 1:45 PM, Kenneth Adam Miller < kennethadammiller@gmail.com> wrote: > I'm using OCamlMakefile (rather the library that I'm editing uses it, and > I have to use it consequently), and I need to add some package dependencies > in order to recompile each while developing locally before I ship my > changes to opam. Basically, I've added the core and core_kernel packages to > these libraries to make some functions tail recursive. But it's turning out > that using OCamlMakefile has made it more difficult than it sounds. > > A is consumed by B, but both must be installed for them to be usable on > the target machine. Currently, you can do an opam install A B and it will > work. A has been successfully edited and subsequently recompiled to > consume core and core_kernel as it needs to. I was even able to opam pin > the package to get it working locally. > > B consumes A, but weirdly, B complains of the following when I try to make > it: > > Error: No implementations provided for the following modules: > Core_kernel referenced from /path/to/(A) > Core referenced from /path/to/(A) > > I noted that in Stack Overflow that there were some issues with casing for > package names when you built stuff. This is strange because when I was > compiling A, it worked fine. I changed the casing to A instead of a in the > OCamlMakefile export PACKS= line, and it failed, unable to find the package > A. > > So, A compiles just fine, but B refuses. I tried to change B to specify > various combinations of casing of core (as in: PACKS+=core vs PACKS+=Core) > but that failed too. > > So now I don't know how to get B to compile using OCamlMakefile. > > --001a113ac7ea1eedd6051936a9c1 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
I fixed it. It was the package specification order. :(
=
I wish there were a warning about that in the compiler output that ment= ions the lack of implementation that the compiler sees.

On Tue, Jun 23, 2015 at 1:45 PM= , Kenneth Adam Miller <kennethadammiller@gmail.com> wrote:
I= 9;m using OCamlMakefile (rather the library that I'm editing uses it, a= nd I have to use it consequently), and I need to add some package dependenc= ies in order to recompile each while developing locally before I ship my ch= anges to opam. Basically, I've added the core and core_kernel packages = to these libraries to make some functions tail recursive. But it's turn= ing out that using OCamlMakefile has made it more difficult than it sounds.=

A is consumed by B, but both must be = installed for them to be usable on the target machine. Currently, you can d= o an opam install A B and it will work.=C2=A0 A has been successfully edite= d and subsequently recompiled to consume core and core_kernel as it needs t= o. I was even able to opam pin the package to get it working locally.
=

B consumes A, but weirdly, B complains of t= he following when I try to make it:

Er= ror: No implementations provided for the following modules:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Core_kernel referenced from /path/to/(= A)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Core referenced from /= path/to/(A)

I noted that in Stack Over= flow that there were some issues with casing for package names when you bui= lt stuff. This is strange because when I was compiling A, it worked fine. I= changed the casing to A instead of a in the OCamlMakefile export PACKS=3D = line, and it failed, unable to find the package A.

So, A compiles just fine, but B refuses. I tried to change B t= o specify various combinations of casing of core (as in: PACKS+=3Dcore vs P= ACKS+=3DCore) but that failed too.=C2=A0

So now I don't know how to get B to compile using OCamlMakefile.


--001a113ac7ea1eedd6051936a9c1--