Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/05/2008, à 07:29

Plouc

installation et utilisation de Ocamlgraph

Bonjour,


je dois programmer une histoire d'automates, et j'aimerais pour cela utiliser Ocaml. C'est tout content que j'ai trouvé ocamlgraph qui me serait rudement utile, et se trouve dans les paquets synaptiques, Oh joie ! (Je précise que je suis sous hardy, et utilise ocaml 3.10, sais t'on jamais)

Sauf que j'y arrive pas. Tout semble s'être bien installé, mais pas moyen d'y accéder. Sous emacs avec tuareg j'essai bien open Graph ou open Graph.Pack  rien à faire, il me répond "unbound module Graph".
Pas moyen non plus de compiler l'exemple demo.ml

open Graph.Pack.Digraph
(* to get undirected graphs, change to 
   open Graph.Pack.Graph
*)

let show = display_with_gv

let g = Rand.graph ~v:10 ~e:20 ()
let () = show g

let g' = complement g
let () = show g'

let g' = mirror g
let () = show g'

let g' = transitive_closure ~reflexive:true g
let () = show g'

(* Intersection and union *)

let g1 = create ()
let g2 = create ()

let v1 = V.create 1
let v2 = V.create 2
let v3 = V.create 3
let v4 = V.create 4
let v5 = V.create 5
let v6 = V.create 6
let v7 = V.create 7

let () =
  add_edge g1 v1 v2;
  add_edge g1 v2 v1;
  add_edge g1 v1 v3;
  add_edge g1 v2 v3;
  add_edge g1 v5 v3;
  add_edge g1 v6 v6;
  add_vertex g1 v4

let () =
  add_edge g2 v1 v2;
  add_edge g2 v2 v3;
  add_edge g2 v1 v4;
  add_edge g2 v3 v6;
  add_vertex g2 v7

let () = show g1
let () = show g2
let g' = intersect g1 g2
let () = show g'
let g' = union g1 g2
let () = show g'

donné dans la doc : http://ocamlgraph.lri.fr/index.fr.html



J'ai l'impression qu'il y a juste qq chose dans l'utilisation/istallationn des bibliothèque ocaml que j'ai mal compris.
Quand je souhaite faire une bibliothèque à partir de monmodule.ml je fais un

ocamlc -c monmodule.mli
ocamlc -c monmodule.ml
ocamlc -a monmondule.cmo -o monmodule.cma

puis en compilant des code avec en entête open Monmodule

ocamlc mondule.cma moncode.ml

ca marche très bien.

Mais là un

 ocamlc graph.cma demo.ml

me donne un très disgracieux
Unbound module Graph.Pack.Digraph


Je ne suis pas vraiment u pro de linux du tout, et je n'ai pas trop d'idée de comment sont installation des biblothèque dans ce genre, ni comment on les utilise normalement. Mais a priori l'installation synaptique s'est bien passée, et les fichiers sont présent là où ils devraient être. Je patauge un peu . . .

Si une bonne âme pouvait m'aider, j'ai chercher sur le net, mais ne trouve pas grand chose qui m'aide. Si vous aviez un élément de réponse, ou une source, ca serait fort urbain de votre part.

Dernière modification par Plouc (Le 20/05/2008, à 07:36)

Hors ligne