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

Re: Static linking considered harmful

On 2006-11-22 05:37:43, Patrice Dumas <pertusus free fr> wrote:

On Wed, Nov 22, 2006 at 10:29:44AM +0000, Andrew Haley wrote:
>  >
>  > Not only. There are cases when all those issues are moot,
>  > a prominent one
>  > being for numerical models. Compiling models statically makes
>  > it possible
>  > to run them on any other linux (including different fedora
>  > version) box
>  > without recompiling. So all the libraries that can be used for
>  > numerical
>  > computations should have static libraries kept.
> This seems like a non sequitur.  What's special about numerical
> computations?

I already explained it in my mail? To be more precise

* security considerations are moot
* nss, iconv are not needed

Other arguments for dynamic linking are not compulsory.

And numerical models are programs we would like to be able to run
on other linux box without recompiling. Imagine that compilation
takes 30 minutes and that you want to start 20 runs in paralell
from nfs mounted filesystem in an heterogeneous linux environment
with some redhat 6.2, 7.x, centos, debian, mandrake and fedora
core (real world example, of course).


I have to agree with Patrice Dumas. I regularly do extensive numerical analysis and modeling using such a network, and the compilation time for the central program is VERY long, taking over 40 minutes on the fastest machine I have available. While I don't think we have anything older than RH8 in the pool of runtime machines, many of them cannot be upgraded for other reasons (I don't own them - I just get to use them when they are available, so the pool of machines changes probably every time I visit phase space), and if I had to do a compile for every different O/S+release combination I'm using, it would be a nightmare.

While my run time is longer than Pat's example (a little over 4 hours using around 30 machines), if I had to recompile for each of the different variations I use, it would be prohibitively time-consuming and would be a reason to stop upgrading several machines here.

I don't know whether eliminating static libraries would be a problem for other types of apps, for what I'm doing its elimination would be a disaster.

While I don't see a problem with eliminating static linking of system utilities, IMHO eliminating it for user-written utilities is not a "universal benefit."

william w. austin                               waustin speakeasy net
"life is just another phase i'm going through. this time, anyway ..."

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