[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: About this ocaml versioning stuff



On Tue, Jul 15, 2003 at 10:52:57AM +0200, Jérôme Marant wrote:
> Selon Sven Luther <sven.luther@wanadoo.fr>:
> 
> > >   I think that binaries must not be suffixed with a version because
> > >   compatibilities with other distro are going to be lost, especialy:
> > > 
> > >   - binary compatibility: binaries distributed must always
> > >     call #!/usr/bin/ocamlrun . Hence, you can run the same
> > >     binary everywhere.
> > 
> > We are broken anyway, since other distros use mostly
> > /usr/local/bin/ocamlrun, and anyway, i guess if we go this way, other
> > distros will go this way also. I hope upstream also has a chance to
> > going this way, but they didn't comment on it despite my repeated
> > questions.
> 
> No, this is wrong. Red Hat and Mandrake, the most widely used commercial
> distro are using /usr/bin .

Well, what about all the people who install stuff in any random place ?
I think they way outnumber any redhat or mandrake users out there.

Also, like said, i would really like upstream to go this way also (for
ocamlrun) because it is the only way which really makes sense, to be
sure that you don't try to run your privately built bytecode programs
with the wrong compiler once you upgraded your ocaml packages to a new
and incompatible version.

> > Also, notice that it is ever possible to run the bytecode executables as
> > ocamlrun bytecode_file, and it will work whatever was descripted in the
> > #! entry.
> 
> This is stupid. You never run bytecode this way. +x chmod'ing the bytecode
> should be enough. 

Why ? it beats editing the bytecode files to change that line by hand.
There is no other way to doing it.

> > I think this is a false problem, since after all the user could have
> > ocamlrun installed anywhere, and it could break anyway. Also, i don't
> > really care much about other distros or broken self installations. I
> > will not specially make thin,gs difficult for them, but not go out of my
> > way to stay compatible with them also, especially if said compatibility
> > thingy is a wrong problem like here.
> 
> You _have to_ care for other distro because users of ocaml packages
> may distribute binaries that _should_ be executable on other distro.
> Debian _cares_ for compatibilities with others distros (that's what
> LSB is for).

Yes, sure, but not at all cost. There is no reason i should go into a
rigid mode just because the other distros are not wanting to make some
minor and small adjustement (a sylink from ocamlrun-<version> to
ocamlrun should do). What does the LSB says about ocaml bytecode
executables anyway ?

But you are right, as i said from the begining, this is an upstream
thing, we can go ahead, and make the change, and see if other will
follow or not.

> > >   - source compatibility: autoconf scripts are seeking for
> > >   ocamlc, ocamlopt and so on. At least, symlinks must always
> > >   been there.
> > 
> > Yep, this is a problem. But it is nothing we can't fix or educate
> > upstream to find. Also, there will be transparent 'latest ocaml'
> > wrappers, so there should be no problem, like with gcc, where you can
> > use either gcc or gcc-<version>. We have to fix stuff to build without
> > the wrapper in our packages though.
> 
> Why would the ocaml team support old versions of their compiler?

Because it is more professional to do that ?

> > But again, it was kind of an experiment, i want feedback, and maybe we
> > should also get upstream opinion or the opinion of the community at
> > large. Maxence, can you comment on this, maybe, or ask Xavier
> > personnally about it ?
> 
> You may need a rationale before asking ...

Well, you can keep old (possibly closed source) bytecode programs
arounds with a minimal runtime system (ocamlrun and the stublibs) and
install the new version beside of it. Is that not a rationale enough
reason for it ? Even a reason why debian should do it ? And i think we
should care about this more than other distribs compatibility, even our
social contract says so. And anyway, we are the vanguard of ocaml
packaging, i guess others will follow suit if we do something :)))

Friendly,

Sven Luther



Reply to: