[Fedora-packaging] paragraph on shipping static numerical libs

Jonathan Underwood jonathan.underwood at gmail.com
Sun May 27 18:59:44 UTC 2007


On 27/05/07, Patrice Dumas <pertusus at free.fr> wrote:
> I have exactly the opposite experience. I have issues with g77/gfortran
> incompatibilities, for example. Or missing libraries on platform I am
> not administrator. Or libraries with different sonames. In what case did
> you have bizarre results?
>

A program statically linked with GMP running on two different
platforms giving different answers.

> > Besides which, if you were to want to statically link a binary and
> > send it to run elsewhere, Fedora isn't the platform to be doing it on.
>
> Why not?

Fedora is usually based on the latest glibc. Segfaults seem to ensue
when running a statically linked binary compiled on Fedora with a
system  with an earlier glibc.

>
> > If you're looking for that sort of portability, you should be using a
> > consistent and reliable platform for the calculations, like RHEL.
>
> What a bizarre suggestion. Fedora should be good for numerical models.
> If fedora isn't good for that RHEL wont be either.
>
Yeah, I phrased the poorly. I use Fedora daily for numerical work.
What i meant was, if you're really loking for a reliable and
reproducible setup for running numerical calcs based on static linking
and distributing binaries, you wouldn't want to use a distro with
rapid ABI turnover.

> > The right fix here is to educate scientific programmers as to why
> > statically linking in libraries doesn't actually get them what they
> > want, and that it is broken.
>
> I don't want to give false ideas, in many real life cases statically
> linking numerical models gave a binary that gave a similar result on all
> the platforms. I prefer educating people that believe that static
> linking doesn't bring in portability.

Right - that's what I meant the last sentence - so why go to the
bother of making statically linkable libraries available if it doesn't
actually achieve the goal of producing portable binaries, but rather
gives people false hope. That's what I'd call wasting people's time,
or giving them a noose to hang themselves with.

It seems to me that the use case doesn't justify what you're asking
for though. The solution you're proposing (allowing users to link
statically to system wide libraries) doesn't achieve the goal
(producing "run anywhere" binaries). As Matthias pointed out, if
someone is hell bent on producing statically linked binaries, then
they can download the source for the libraries they need and build and
link statically against them.

J.




More information about the packaging mailing list