Re: ocaml 3.04 packaging issues ...
On Fri, Dec 14, 2001 at 05:29:53PM +0100, Stefano Zacchiroli wrote:
> On Fri, Dec 14, 2001 at 05:17:59PM +0100, Sven wrote:
> > > ok, but on the average I think that none want to do only bytecode
> > > developmente if they can do both development, anyway this is just a
> > > personal opinion.
> >
> > Well, it would be nice to split away the stub libraries into a separate
> > package, so people could install them and run dynamically linked bytecode
> > executables.
>
> Yes, like the standard shared libraries.
> Anyway, I haven't yet looked at the ocaml dynaminc linking stuff and I
> don't know if stubs are created during the library compilation process
> or not.
> Currently libraries that I package aren't distributed with stubs.
>
> Have I to wait the upstream support for dynlink or this feature works
> for free from ocaml 3.04?
Well, it concerns only C libraries for now.
That is, instead of statically linking the C stubs into the .cma, there is now
support for having it done dynamically. Thus you don't need to build with
-custom anymore, only if you want static executables. I think it would be best
to rename -custom to -static or something such.
That said, as i understand it, the ocaml code is still statically linked.
Now, what is the implication of that for us :
o statically linked bytecode is now arch indep.
o we need to provide the dynamically linked stub libraries on all libraries
which interface with C, preferably in a split -base or similar package.
BTW, i have the following /etc/magic file :
-------- cut here --------------
# Magic local data for file(1) command.
# Insert here your local magic data. Format is described in magic(5).
0 string Caml1999 Objective caml
>8 string X exec file
>8 string I interface file\ (*.cmi)
>8 string O object file\ (*.cmo)
>8 string A library file\ (*.cma)
>8 string Y native object file\ (*.cmx)
>8 string Z native library file\ (*.cmxa)
>8 string M 'ast_impl' file
>8 string N 'ast_intf' file
>9 string >\0 (Version %3.3s).
-------- cut here --------------
Would it not be nice to have this send to the file maintainer include this ?
it gives things like :
digest.cmi: Objective caml interface file\ (*.cmi) (Version 008).
profiling.cmo: Objective caml object file\ (*.cmo) (Version 004).
dynlink.cma: Objective caml library file\ (*.cma) (Version 006).
random.cmx: Objective caml native object file\ (*.cmx) (Version 006).
bigarray.cmxa: Objective caml native library file\ (*.cmxa) (Version 008).
Notice, that since 3.02, only the .cma (Version 005) and the .cmxa (Version
007) did change.
I don't know what the exec, ast_impl and ast_intf file type are for though.
Friendly,
Sven Luther
Reply to: