← Back to team overview

dolfin team mailing list archive

Re: [PETSC #13298] Re: installation of DOLFIN 0.5.7 on Debian

 



On Tue, 5 Jul 2005, Barry Smith wrote:


As far as I can see, the information that is being hardwired into the PETSc
library files is the installation          location of the PETSc library files
themselves. Correct me if I'm wrong.

 In the PETSc shared libraries are hardwired the locations of the PETSc dynamic
libraries (the dynamic libraries contain all the actual implementations while
the shared libraries (what you link against) contain the user API functions).
If we do not hardwire, we have no way of finding the dynamic libraries.

I see. What are examples of shared/dynamic library files in PETSc? I assume both are installed?

If the idea is so that the linker can find the library at runtime, that is
what standard locations like /usr/lib are for, and search paths for the linker
can also be set in /etc/ld.so.conf.

 /usr/lib reminds me about the old days of Windows where you dump all your
dlls into System32 (even Microsoft finally figured out this was a stupid idea).

I'm not sure why this is a stupid idea. The whole Unix world uses this, as far as I know, and has done so for a long time.

And changing a file like /etc/ld.so.conf is insane.

/etc/ld.so.conf is not much used. On my 3 yr old Debian installation, it is

/usr/X11R6/lib
/usr/lib/3dnow/atlas
/usr/lib/atlas/3dnow
/usr/lib/3dnow
/usr/lib/atlas

 Now we could require the user to set PETSC_DIR or something similar at RUNTIME
to locate the dynamic libraries, but I dislike that.

Given all this new information I'm going to have to rethink the entire process.

Ok.                                                                Faheem.



Follow ups

References