On Thu, Feb 4, 2010 at 6:11 AM, Jed Brown <jed at 59a2.org> 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 >
I agree. > > ?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 was going to propose exactly the same. However, I bet that some (older?) platforms (not using ELF?) will not work like in Linux, and then a -lpetsc front-end will not work as you expect because of broken/missing support por shared lib dependencies. > > I'm not sure I see the benefit of static linking with-single-library > because they still have to explicitly link recursive dependencies. > As I commented long ago, convenience for end-users (single include, single library) is clear benefit, even in the case of static linking. -- Lisandro Dalc?n --------------- Centro Internacional de M?todos Computacionales en Ingenier?a (CIMEC) Instituto de Desarrollo Tecnol?gico para la Industria Qu?mica (INTEC) Consejo Nacional de Investigaciones Cient?ficas y T?cnicas (CONICET) PTLC - G?emes 3450, (3000) Santa Fe, Argentina Tel/Fax: +54-(0)342-451.1594
