On Thu, 4 Feb 2010, Jed Brown wrote: > On Wed, 3 Feb 2010 18:08:34 -0600 (CST), Satish Balay <balay at mcs.anl.gov> > wrote: > > Should we default to using --with-single-library=1? [I'd prefer this - > > as it will minimize dlopen issues from external packages.] > > > > Also - I'd like to have distinct library names between > > --with-single-library=0 and 1 - so that there is no ambiguity. > > > > i.e libpetsc.a for --with-single-library=1 > > libpetscsys.a [instead of current libpetsc.a] for --with-single-library=0 > > I also like distinguishing between libpetsc (the whole thing) and > libpetscsys, it makes it easier to write robust auto-configure stuff to > find PETSc. Note that with shared libs, you can build them separately, > link the front-end > > ld -shared -o libpetsc.so libpetsc*.so > > and then the same install is available as one convenient chunk (just > -lpetsc) or in whatever granularity is desired, and it still enforces > the module boundaries. > > I'm not sure I see the benefit of static linking with-single-library > because they still have to explicitly link recursive dependencies.
In a single build - I think its good to keep symmetry between .so and .a files - to minimise user confusion. And makefiles having a single list of libs [usually .a files are ignored when equivalent .so is present anyway] satish
