I need to distribute matplotlib as part of a large and somewhat heterogeneous package of Python-based software. On Macs, lapack is installed by default, and I can rely on the linking working regardless of which OS version it was compiled on (we use 10.4.11, but it runs fine on 10.5). On Linux, it’s variable - the kernel 2.6-based OSes we use appear to have it, but not the older 2.4-based systems. For the older systems this is not a problem - it results in this:
nat@…2592…> ldd lapack_lite.so
linux-gate.so.1 => (0xffffe000)
libc.so.6 => /lib/libc.so.6 (0xf7d97000)
/lib/ld-linux.so.2 (0x56555000)
The lack of links to the full lapack module doesn’t appear to break anything that I do - I’m just plotting simple lines and I don’t use any of the numpy routines in my code.
This is what happens on the newer systems:
nat@…2593…> ldd lapack_lite.so
linux-gate.so.1 => (0xffffe000)
liblapack.so.3 => not found
libblas.so.3 => not found
libg2c.so.0 => /usr/lib/libg2c.so.0 (0xf7fb6000)
libm.so.6 => /lib/libm.so.6 (0xf7f8f000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf7f82000)
libc.so.6 => /lib/libc.so.6 (0xf7e45000)
/lib/ld-linux.so.2 (0x56555000)
This results in an import error on systems that don’t have lapack3 installed. We would prefer to avoid having to tell our users to install more software in order to use what I’ve written. Is there any way to force numpy to not link to anything besides what it saw in the first example? I would prefer to avoid hacking into the numpy distutils scripts if possible.
Sorry this isn’t directly matplotlib-related, but I thought I’d see if someone here had encountered this problem before I subscribed to another list.
thanks,
Nat