From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr 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 DDF9D7FF3C for ; Thu, 27 Oct 2016 17:35:02 +0200 (CEST) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=ivg@ieee.org; spf=Pass smtp.mailfrom=ivg@ieee.org; spf=None smtp.helo=postmaster@mail-lf0-f52.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of ivg@ieee.org) identity=pra; client-ip=209.85.215.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="ivg@ieee.org"; x-sender="ivg@ieee.org"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of ivg@ieee.org designates 209.85.215.52 as permitted sender) identity=mailfrom; client-ip=209.85.215.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="ivg@ieee.org"; x-sender="ivg@ieee.org"; 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-lf0-f52.google.com) identity=helo; client-ip=209.85.215.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="ivg@ieee.org"; x-sender="postmaster@mail-lf0-f52.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3AB8HsHR2eadtkABxvsmDT+DRfVm0co7zxezQtwd8Z?= =?us-ascii?q?segRL/ad9pjvdHbS+e9qxAeQG96KsbQb0qGG6ejJYi8p2d65qncMcZhBBVcuqP?= =?us-ascii?q?49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL2PbrnD61zMOABK3bVMz?= =?us-ascii?q?fbWvXNGLxJTtn8mJuLTrKz1SgzS8Zb4gZD6Xli728vcsvI15N6wqwQHIqHYbM8?= =?us-ascii?q?5fxGdvOE7B102kvpT41NdZ/i9Ro/Ms8dJbGeW/JvxgDO8QMDNzEWcz7dHrvB+L?= =?us-ascii?q?YQqr4WERVHcR2k5EAgzC9hz8TJDZuTC8ve1n3iSeOYv7Qa1iChq46KI+aQHhjm?= =?us-ascii?q?8oMCI+7mrXi9BrxPZavh2JphFyzsjTeo7DZ6k2Rb/UYd5PHTkJZc1WTSEUR9rk?= =?us-ascii?q?N4Y=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CzAQBEHRJYfzTXVdFcDg0BAQEDAQEBC?= =?us-ascii?q?QEBARYBAQEDAQEBCQEBAYJ/AQEBAQF1fQekL4JXjFKFFoIHIIYDAoF2B0ESAQE?= =?us-ascii?q?BAQEBAQEBAQESAQEJCwsJGzKCMwQBFQEEghABAQEDARIRHQEBNwEECwkCCw0qA?= =?us-ascii?q?gIiEgEFARwGEwgaiCoIlW+PTYEyPzKKX2eESQEBBYgoAQEBAQYBAQEBARoIEIY?= =?us-ascii?q?tg1CBBYdLglsBlDyFXoYtiXaBbk6EH4kpjQuCPxMegRElA4ELgwwPHIEXVyI0A?= =?us-ascii?q?YcUgUoBAQE?= X-IPAS-Result: =?us-ascii?q?A0CzAQBEHRJYfzTXVdFcDg0BAQEDAQEBCQEBARYBAQEDAQE?= =?us-ascii?q?BCQEBAYJ/AQEBAQF1fQekL4JXjFKFFoIHIIYDAoF2B0ESAQEBAQEBAQEBAQESA?= =?us-ascii?q?QEJCwsJGzKCMwQBFQEEghABAQEDARIRHQEBNwEECwkCCw0qAgIiEgEFARwGEwg?= =?us-ascii?q?aiCoIlW+PTYEyPzKKX2eESQEBBYgoAQEBAQYBAQEBARoIEIYtg1CBBYdLglsBl?= =?us-ascii?q?DyFXoYtiXaBbk6EH4kpjQuCPxMegRElA4ELgwwPHIEXVyI0AYcUgUoBAQE?= X-IronPort-AV: E=Sophos;i="5.31,553,1473112800"; d="scan'208,217";a="198400749" Received: from mail-lf0-f52.google.com ([209.85.215.52]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 27 Oct 2016 17:35:01 +0200 Received: by mail-lf0-f52.google.com with SMTP id b81so35101272lfe.1 for ; Thu, 27 Oct 2016 08:35:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee-org.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=wWyn54ZAzVNHbmQ9wXJUiPXcrvCeK+VXu08SPwl+gKk=; b=D0CvJTSbMWgolzsnGtW9b4b8gLunqQtfFTw5P2LJaiEbKv5AEhqVwT89ZrqLi6aiqg ukzLedWaop8Aran5DzlZERL118dCfRUOzVbwi6WIiaQ2tpeEW0dsTWfsq8p4vA9lNM8l xD+1gXtbH9UeADnDVapz9dS4r5jjrjWn4uAFYQ4y7NssTbtCDhbyt27T4u6MgvxlQPDL LCPIOdVJ6qJqn6L3Rw7WK/rWaBsLmP7Gt3RW+aBd8+GzeE6E8QiDXeJotEdTd2nyycc2 plK1Rs3dU0Sr4haGbt+O20ug8HWJY2lXI9D8U62EK0zAgjZ1ukL6v3o8qa8ioK/OHOmK /yQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=wWyn54ZAzVNHbmQ9wXJUiPXcrvCeK+VXu08SPwl+gKk=; b=davvIiRUYlA4RMVTL/eXFDH2L7PGpjTK4p6jZQsb8QFdNlaW28lGcrgFtA85BI9QK2 ImUSZTad2vSR6Gik1YyrB4t2O8HtU7vmPy6Mu8R4O112URLWFyGZB/U2Xtsqird8jGmA on+vWE6sa2KOfmR7fZShhkSjb5ky/sTuDraRkPAcgDn1W1iBHooh7g2IEYyffRJboxAk LAzKNnVTERfK6DPVekvWgqUF8LvBGylQ9Ct1Wn4SO6WmaDakKTLa3baoqWH2Oz6c+WD8 ATnVGylj8j9QDWkhOoG8WzZfiWQ63+MZkac3vC8q0PCVXR4liUrnvyNJ0tzrF1PChLfl vdhw== X-Gm-Message-State: ABUngvep4qKMvbeX9s0UoYn3mot6Ndf0QKiyrFguJZni/XNLJULXLl4Ten7t8vCJ2KW7IBntZA4geVfcl3NlEwkd X-Received: by 10.25.212.136 with SMTP id l130mr6939193lfg.73.1477582500400; Thu, 27 Oct 2016 08:35:00 -0700 (PDT) MIME-Version: 1.0 Received: by 10.114.28.34 with HTTP; Thu, 27 Oct 2016 08:34:59 -0700 (PDT) In-Reply-To: References: From: Ivan Gotovchits Date: Thu, 27 Oct 2016 11:34:59 -0400 Message-ID: To: Jonathan DiLorenzo Cc: caml-list Content-Type: multipart/alternative; boundary=001a114197aa105bd3053fda7c02 Subject: Re: [Caml-list] Providing module implementations for Oasis --001a114197aa105bd3053fda7c02 Content-Type: text/plain; charset=UTF-8 Ok, now the next step would be the following. Carefully check that all modules, that you're using in libraries are included in `Modules` or `InternalModules`. It is the case that sometimes when you forgot to include a module, oasis (actually `ocamlbuild`), may produce a strange, and on a first glance, irrelevant error message. If it doesn't help then the `_build/_log` file might help us to debug the issue. On Thu, Oct 27, 2016 at 10:59 AM, Jonathan DiLorenzo < dilorenzo@cs.cornell.edu> wrote: > Hey Ivan, > > Thanks for your response. > > The first one is that you didn't run `oasis setup` after you made the >> changes, so I would suggest cleaning current state >> and starting from scratch. (I usually just do `git clean -idx` just to be >> sure that I got rid of any generated files, like setup.data, et alas, but >> be careful, >> don't delete something that you need). >> > > I tried cleaning up all the generated files. Same error unfortunately > > >> Another idea is that you're using oasis 0.4.7 with ocaml-4.03.0+flambda, >> they are currently incompatible, and can produce weird bugs. If that so, >> then consider switching >> either a compiler or oasis to different versions. >> > > I am using oasis 0.4.7 and ocaml-4.03.0, but I don't appear to be using > flambda. I tried passing in -config and it said that flambda was false at > least, but I admit, I'm not especially familiar with it, so if there's some > other way I should be checking for this please let me know. Hopefully, > they're compatible sans flambda? > > > On Thu, Oct 27, 2016 at 1:01 AM, Jonathan DiLorenzo < >> dilorenzo@cs.cornell.edu> wrote: >> >>> Hey all, >>> >>> I'm trying to build my system using Oasis and OCamlbuild. I have 3 >>> different libraries and for some reason I seem to only be able to refer >>> from one to the other in seemingly random files. For example, I want my >>> 'ppx' library to be able to use functions from my 'parser' library. One >>> file (ppx_forest.ml) can use functions from it, while another in the >>> same library (skins.ml) cannot, giving me this error: >>> >>> File "_none_", line 1: >>> Error: No implementations provided for the following modules: >>> Forest_parser_helper referenced from ppx/ppx.cmxa(Skins) >>> Command exited with code 2. >>> >>> They can all refer to types I've defined therein though. >>> >>> I'm not fantastic at Oasis so maybe I'm just missing something basic? >>> Any ideas? Any more information I can gather to give more context otherwise? >>> >>> Thanks in advance, >>> Jonathan >>> >>> Excerpt of my Oasis file that may possibly be relevant: >>> >>> Library forest >>> Path: lib >>> BuildTools: ocamlbuild >>> BuildDepends: pads, str, re, re.glob, core, threads, ppx_let >>> CompiledObject: best >>> Modules: Forest, PadsInterface >>> >>> Library parser >>> Path: parsing >>> BuildTools: ocamlbuild, menhir, ocamllex >>> Findlibparent: forest >>> Findlibname: parser >>> BuildDepends: forest, ppx_deriving.show, compiler-libs.common >>> CompiledObject: best >>> Modules: Forest_parser_helper >>> InternalModules: Forest_lexer, Forest_parser, Forest_types >>> >>> Library ppx >>> Path: ppx >>> BuildTools: ocamlbuild >>> Findlibparent: forest >>> Findlibname: ppx >>> BuildDepends: re, re.str, forest.parser, forest, ppx_tools.metaquot >>> CompiledObject: best >>> Modules: Ppx_forest >>> InternalModules: Ppx_forest_lib, Utility, Skins >>> XMETAEnable: true >>> XMETARequires: str re core threads ppx_tools.metaquot >>> XMETAExtraLines: ppx = "ppx_forest" >>> >>> Executable ppx_forest >>> Path: ppx >>> MainIs: ppx_forest.ml >>> BuildDepends: forest, forest.parser, forest.ppx, pads.ppx, >>> ppx_tools.metaquot >>> CompiledObject: best >>> >>> >> > --001a114197aa105bd3053fda7c02 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Ok, now the next step would be the following. Carefully ch= eck that all modules, that you're using in libraries are included in `M= odules` or `InternalModules`. It is the case
that sometimes=C2=A0when y= ou forgot to include a module, oasis (actually `ocamlbuild`), may produce a= strange, and on a first glance, irrelevant error message.=C2=A0
=
If it doesn't help then the `_build/_log` file might hel= p us to debug the issue.=C2=A0

On Thu, Oct 27, 2016 at 10:59 AM, Jonathan DiLoren= zo <dilorenzo@cs.cornell.edu> wrote:
Hey Ivan,

Thanks for = your response.

The first one is that you didn't run `oasis setup` after you m= ade the changes, so I would suggest cleaning current state
an= d starting from scratch. (I usually just do `git clean -idx` just to be sur= e that I got rid of any generated files, like setup.data, et alas, but be c= areful,=C2=A0
don't delete something that you need).=C2=A0

I tried cleaning up all th= e generated files. Same error unfortunately
=C2= =A0
Another idea= =C2=A0is that you're using oasis 0.4.7 with ocaml-4.03.0+flambda, they = are currently incompatible, and can produce weird bugs. If that so, then co= nsider switching=C2=A0
either a compiler or oasis to differen= t versions.=C2=A0

I am u= sing oasis 0.4.7 and ocaml-4.03.0, but I don't appear to be using flamb= da. I tried passing in -config and it said that flambda was false at least,= but I admit, I'm not especially familiar with it, so if there's so= me other way I should be checking for this please let me know. Hopefully, t= hey're compatible sans flambda?


On Thu, Oct 27, 2016 at 1:01 AM, Jonath= an DiLorenzo <dilorenzo@cs.cornell.edu> wrote:
Hey all,

I&= #39;m trying to build my system using Oasis and OCamlbuild. I have 3 differ= ent libraries and for some reason I seem to only be able to refer from one = to the other in seemingly random files. For example, I want my 'ppx'= ; library to be able to use functions from my 'parser' library. One= file (ppx_forest.ml= ) can use functions from it, while another in the same library (skins.ml) cannot, giving me this err= or:

File "_none_", line 1:
Error: No implementations provided for the following modules:
= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Forest_parser_helper referenced from ppx/= ppx.cmxa(Skins)
Command exited with code 2.

<= /div>
They can all refer to types I've defined therein though.

I'm not fantastic at Oasis so maybe I'm just m= issing something basic? Any ideas? Any more information I can gather to giv= e more context otherwise?

Thanks in advance,
=
Jonathan

Excerpt of my Oasis file that may po= ssibly be relevant:

Library forest=C2=A0
=C2=A0 Path: =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0lib
=C2=A0 B= uildTools: =C2=A0 =C2=A0ocamlbuild
=C2=A0 BuildDepends: =C2=A0 pa= ds, str, re, re.glob, core, threads, ppx_let
=C2=A0 CompiledObjec= t: best
=C2=A0 Modules: =C2=A0 =C2=A0 =C2=A0 Forest, PadsInterfac= e

Library parser
=C2=A0 Path: =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 parsing
=C2=A0 BuildTools: =C2=A0 =C2=A0= ocamlbuild, menhir, ocamllex
=C2=A0 Findlibparent: =C2=A0forest<= /div>
=C2=A0 Findlibname: =C2=A0 =C2=A0parser
=C2=A0 BuildDep= ends: =C2=A0 forest, ppx_deriving.show, compiler-libs.common=C2=A0
=C2=A0 CompiledObject: best
=C2=A0 Modules: =C2=A0Forest_parser_helper
=C2=A0 InternalModules: Forest_lexer, Forest_parser, Forest_types

Library ppx
=C2=A0 Path: =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 ppx
=C2=A0 BuildTools: =C2=A0 =C2=A0 ocamlbuild=
=C2=A0 Findlibparent: =C2=A0forest
=C2=A0 Findlibname:= =C2=A0 =C2=A0ppx
=C2=A0 BuildDepends: =C2=A0 re, re.str, forest.= parser, forest, ppx_tools.metaquot
=C2=A0 CompiledObject: best
=C2=A0 Modules: =C2=A0 =C2=A0 =C2=A0 =C2=A0Ppx_forest
=C2= =A0 InternalModules: Ppx_forest_lib, Utility, Skins
=C2=A0 XMETAE= nable: =C2=A0 =C2=A0true
=C2=A0 XMETARequires: =C2=A0 str re core= threads ppx_tools.metaquot
=C2=A0 XMETAExtraLines: =C2=A0ppx =3D= "ppx_forest"

Executable ppx_forest
=C2=A0 Path: =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ppx
=C2=A0 = MainIs: =C2=A0 =C2=A0 =C2=A0 =C2=A0 ppx_forest.ml
=C2=A0 BuildDepends: =C2=A0 forest,= forest.parser, forest.ppx, pads.ppx, ppx_tools.metaquot
=C2=A0 C= ompiledObject: best




--001a114197aa105bd3053fda7c02--