English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
RE: [Caml-list] ocamlmktop mystery
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2005-11-18 (12:56)
Subject: RE: [Caml-list] ocamlmktop mystery
The interface file is still in the lib directory.
you should do the follwing :
#directory "../lib";;
# Foo.add;;

The toplevel has to see the interface files .cmi in order to get the types, since this infomation is not in the compiled .cmo or .cmx.


-----Message d'origine-----
De : caml-list-bounces@yquem.inria.fr
[mailto:caml-list-bounces@yquem.inria.fr]De la part de Florian Weimer
Envoyé : vendredi 18 novembre 2005 13:46
À : caml-list@yquem.inria.fr
Objet : [Caml-list] ocamlmktop mystery

[Repost from comp.lang.functional]

I can't use ocamlmktop to build a toplevel using objects in a
different directory:

$ mkdir lib
$ echo let add a b = a + b > lib/foo.ml
$ ocamlc -c lib/foo.ml
$ ocamlmktop -I lib lib/foo.cmo
$ ./a.out
        Objective Caml version 3.08.3

# Foo.add;;
Unbound value Foo.add

However, changing to the directory first works as expected:

$ cd lib
$ ocamlmktop foo.cmo
$ /a.out
        Objective Caml version 3.08.3

# Foo.add;;
- : int -> int -> int = <fun>

What am I doing wrong?

Caml-list mailing list. Subscription management:
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs
Ce message et toutes les pieces jointes (ci-apres le "message") sont confidentiels et etablis a l'intention exclusive de ses
Toute utilisation ou diffusion non autorisee est interdite. 
Tout message electronique est susceptible d'alteration. 
SG Asset Management et ses filiales declinent toute responsabilite au titre de ce message s'il a ete altere, deforme ou falsifie.

Decouvrez l'offre et les services de SG Asset Management sur le site www.sgam.fr 


This message and any attachments (the "message") are confidential and intended solely for the addressees.
Any unauthorised use or dissemination is prohibited. 
E-mails are susceptible to alteration. 
Neither SG Asset Management nor any of its subsidiaries or affiliates shall be liable for the message if altered, changed or