caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Sven Luther <sven.luther@wanadoo.fr>
To: Richard Jones <rich@annexia.org>
Cc: Sven Luther <sven.luther@wanadoo.fr>, caml-list@inria.fr
Subject: Re: [Caml-list] ANNOUNCE: Wiki software written in OCaml
Date: Sat, 31 Jul 2004 12:22:59 +0200	[thread overview]
Message-ID: <20040731102259.GA18765@pegasos> (raw)
In-Reply-To: <20040730160116.GA12848@annexia.org>

On Fri, Jul 30, 2004 at 05:01:16PM +0100, Richard Jones wrote:
> On Fri, Jul 30, 2004 at 02:03:20PM +0200, Sven Luther wrote:
> > Mmm, i adapted it to ocaml 3.08, and added the missing ocamldbi
> > build-dependency, since it failed somehow because of a double -I in the
> > Makefile.
> > 
> > Now, it fails with :
> > 
> > ocamlc -linkall -custom -g -w s -I /usr/lib/ocaml/3.08/pcre -I
> > /usr/lib/ocaml/3.08/dbi -I /usr/include/apache-1.3 -I
> > /usr/lib/ocaml/3.08/postgres postgres.cma dynlink.cma str.cma pcre.cma
> > unix.cma dbi.cma mod_caml_c.o mod_caml.cmo apache_c.o wrappers.o apache.cmo
> > mod_caml_config.cmo cgi_escape.cmo template.cmo cgi.cmo -o mod_caml.so \
> >   -cclib "-fPIC -shared -L/usr/lib/ocaml/3.08/postgres -lpostgres -lpq
> >   -lcamlrun -ltermcap -lunix -lstr "
> >   Error while linking /usr/lib/ocaml/3.08/dbi/dbi.cma(Dbi_mysql):
> >   Reference to undefined global `Mysql'
> >   make[1]: *** [mod_caml.so] Erreur 2
> 
> Yes, this is interesting ...
> 
> It's because Dbi is built (by John) with MySQL support.  Thus
> /usr/lib/ocaml/*/dbi/dbi.cma contains a module (Dbi_mysql) which
> depends on (the OCaml module) Mysql.
> 
> John's libdbi-ocaml package suggests libmysql-ocaml-dev, but doesn't
> require it.  This works fine provided you're just linking a standalone
> program against the Dbi library, because unless the standalone program
> deliberately links against Dbi_mysql, nothing will attempt to load the
> missing Mysql module.
> 
> So far, so good.  Now here's the problem: ocamldbi contains a
> mechanism to build handles of any type (Dbi.Factory.connect "postgres"
> "store") for example, which is implemented using a complex
> registration mechanism.  mod_caml requires this, because it provides a
> way to pool database handles between requests.
> 
> Dbi.Factory loads any available module, depending on how it was
> compiled.  Thus when you link mod_caml, and if ocamldbi was compiled
> to depend on Mysql, then mod_caml depends on Mysql too!
> 
> So the upshot is that libmysql-ocaml-dev is a real dependency, not
> just a 'Suggest:'ion.

Well, the problem still happens with libmysql-ocaml-dev installed though,
which is what i find strange.

Friendly,

Sven Luther

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  reply	other threads:[~2004-07-31 10:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20040730005349.GA18722@pegasos>
     [not found] ` <20040730075621.GA5996@annexia.org>
     [not found]   ` <20040730080245.GA6075@annexia.org>
     [not found]     ` <20040730082701.GA30962@pegasos>
     [not found]       ` <20040730084658.GA6898@annexia.org>
     [not found]         ` <20040730090617.GA31469@pegasos>
     [not found]           ` <20040730090647.GA7218@annexia.org>
     [not found]             ` <20040730091939.GA31646@pegasos>
     [not found]               ` <20040730092349.GA7444@annexia.org>
     [not found]                 ` <20040730120320.GA813@pegasos>
2004-07-30 16:01                   ` Richard Jones
2004-07-31 10:22                     ` Sven Luther [this message]
2004-07-29 16:07 Richard Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040731102259.GA18765@pegasos \
    --to=sven.luther@wanadoo.fr \
    --cc=caml-list@inria.fr \
    --cc=rich@annexia.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).