The library I'm importing is called _gain.so.
file _gain.so gives:
_gain.so: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV),
not stripped
file libgomp.so.1 gives:
libgomp.so.1: ELF 64-bit LSB shared object, AMD x86-64, version 1
(SYSV), not stripped
ldd _gain.so gives:
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00002b51fe5e6000)
libm.so.6 => /lib64/tls/libm.so.6 (0x00002b51fe7d6000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002b51fe95c000)
libc.so.6 => /lib64/tls/libc.so.6 (0x00002b51fea68000)
libDF-ISE++.so => ...
libDF-ISE.so => ...
libils.so => ...
libmetis.so => ...
libarpack.so => ...
libz.so.1 => /usr/lib64/libz.so.1 (0x00002b51ff3dd000)
libacml.so => /home/steiger/src/release/amd64/lib/libacml.so
(0x00002b51ff4f0000)
libacml_mv.so =>
/home/steiger/src/release/amd64/lib/libacml_mv.so (0x00002b5200751000)
libpgftnrtl.so => ...
libpgc.so => ...
libpgmp.so => ...
libpthread.so.0 => ...
librt.so.1 => /lib64/tls/librt.so.1 (0x00002b5200d38000)
libnuma.so.1 => /usr/lib64/libnuma.so.1 (0x00002b5200e52000)
libpgbind.so => ...
libgomp.so.1 =>
/home/steiger/src/release/amd64/lib/libgomp.so.1 (0x00002b5201059000)
/lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
I took away some of the path information. I was able to import the
library before adding OpenMP. There is no missing library, and all the
other libraries can be imported.
I also set LD_DEBUG=file as you suggested. When trying to import the
library in python, the following shows up:
19547:
19547: file=libpython2.3.so.1.0 [0]; needed by python [0]
19547: file=libpython2.3.so.1.0 [0]; generating link map
19547: dynamic: 0x000000396dde6200 base: 0x0000000000000000
size: 0x0000000000218110
19547: entry: 0x000000396dc2d620 phdr: 0x000000396dc00040
phnum: 5
19547:
19547: file=libpthread.so.0 [0]; needed by python [0]
19547: file=libpthread.so.0 [0]; generating link map
19547: dynamic: 0x0000003bd510fda0 base: 0x0000000000000000
size: 0x0000000000114378
19547: entry: 0x0000003bd5005620 phdr: 0x0000003bd5000040
phnum: 9
19547:
19547: file=libdl.so.2 [0]; needed by python [0]
19547: file=libdl.so.2 [0]; generating link map
19547: dynamic: 0x0000003bd4b01dd8 base: 0x0000000000000000
size: 0x00000000001020c8
19547: entry: 0x0000003bd4a00f80 phdr: 0x0000003bd4a00040
phnum: 9
19547:
19547: file=libutil.so.1 [0]; needed by python [0]
19547: file=libutil.so.1 [0]; generating link map
19547: dynamic: 0x0000003bd8501e20 base: 0x0000000000000000
size: 0x0000000000102118
19547: entry: 0x0000003bd8401180 phdr: 0x0000003bd8400040
phnum: 9
19547:
19547: file=libm.so.6 [0]; needed by python [0]
19547: file=libm.so.6 [0]; generating link map
19547: dynamic: 0x0000003bd4984df0 base: 0x0000000000000000
size: 0x00000000001851c8
19547: entry: 0x0000003bd4803df0 phdr: 0x0000003bd4800040
phnum: 9
19547:
19547: file=libc.so.6 [0]; needed by python [0]
19547: file=libc.so.6 [0]; generating link map
19547: dynamic: 0x0000003bd472daa0 base: 0x0000000000000000
size: 0x0000000000233fc8
19547: entry: 0x0000003bd451c4a0 phdr: 0x0000003bd4500040
phnum: 10
19547:
19547: calling init: /lib64/tls/libpthread.so.0
19547: calling init: /lib64/tls/libc.so.6
19547: calling init: /lib64/tls/libm.so.6
19547: calling init: /lib64/libutil.so.1
19547: calling init: /lib64/libdl.so.2
19547: calling init: /usr/lib64/libpython2.3.so.1.0
19547:
19547: initialize program: python
19547:
19547: transferring control: python
19547:
19547: file=./_gain.so [0]; needed by
/usr/lib64/libpython2.3.so.1.0 [0]
19547: file=./_gain.so [0]; generating link map
19547: dynamic: 0x00002b8a488fa6f8 base: 0x00002b8a484e9000
size: 0x0000000000428358
19547: entry: 0x00002b8a485c7210 phdr: 0x00002b8a484e9040
phnum: 5
19547:
19547: file=libstdc++.so.6 [0]; needed by ./_gain.so [0]
19547: file=libstdc++.so.6 [0]; generating link map
19547: dynamic: 0x0000003feced5f00 base: 0x0000000000000000
size: 0x00000000001efc70
19547: entry: 0x0000003fecd4d000 phdr: 0x0000003fecd00040
phnum: 6
19547:
19547: file=libgcc_s.so.1 [0]; needed by ./_gain.so [0]
19547: file=libgcc_s.so.1 [0]; generating link map
19547: dynamic: 0x0000003bd6d0a598 base: 0x0000000000000000
size: 0x000000000010a940
19547: entry: 0x0000003bd6c01d40 phdr: 0x0000003bd6c00040
phnum: 5
19547:
19547: file=libDF-ISE++.so [0]; needed by ./_gain.so [0]
19547: file=libDF-ISE++.so [0]; generating link map
19547: dynamic: 0x00002b8a48a4c030 base: 0x00002b8a48937000
size: 0x00000000001159c0
19547: entry: 0x00002b8a4893e5a0 phdr: 0x00002b8a48937040
phnum: 5
19547:
19547: file=libDF-ISE.so [0]; needed by ./_gain.so [0]
19547: file=libDF-ISE.so [0]; generating link map
19547: dynamic: 0x00002b8a48b99030 base: 0x00002b8a48a4d000
size: 0x000000000014d350
19547: entry: 0x00002b8a48a53a00 phdr: 0x00002b8a48a4d040
phnum: 5
19547:
19547: file=libils.so [0]; needed by ./_gain.so [0]
19547: file=libils.so [0]; generating link map
19547: dynamic: 0x00002b8a48d3e428 base: 0x00002b8a48b9b000
size: 0x00000000001cc4e8
19547: entry: 0x00002b8a48bb2ff0 phdr: 0x00002b8a48b9b040
phnum: 4
19547:
19547: file=libmetis.so [0]; needed by ./_gain.so [0]
19547: file=libmetis.so [0]; generating link map
19547: dynamic: 0x00002b8a48ebd030 base: 0x00002b8a48d68000
size: 0x0000000000155cb8
19547: entry: 0x00002b8a48d71840 phdr: 0x00002b8a48d68040
phnum: 5
19547:
19547: file=libarpack.so [0]; needed by ./_gain.so [0]
19547: file=libarpack.so [0]; generating link map
19547: dynamic: 0x00002b8a4905c1e0 base: 0x00002b8a48ebe000
size: 0x00000000001b7b60
19547: entry: 0x00002b8a48ec4610 phdr: 0x00002b8a48ebe040
phnum: 4
19547:
19547: file=libz.so.1 [0]; needed by ./_gain.so [0]
19547: file=libz.so.1 [0]; generating link map
19547: dynamic: 0x0000003feb6121b0 base: 0x0000000000000000
size: 0x00000000001125a8
19547: entry: 0x0000003feb501f20 phdr: 0x0000003feb500040
phnum: 5
19547:
19547: file=libacml.so [0]; needed by ./_gain.so [0]
19547: file=libacml.so [0]; generating link map
19547: dynamic: 0x00002b8a4a2a7028 base: 0x00002b8a49076000
size: 0x0000000001260a40
19547: entry: 0x00002b8a490c93b0 phdr: 0x00002b8a49076040
phnum: 4
19547:
19547: file=libacml_mv.so [0]; needed by ./_gain.so [0]
19547: file=libacml_mv.so [0]; generating link map
19547: dynamic: 0x00002b8a4a401028 base: 0x00002b8a4a2d7000
size: 0x0000000000145ee8
19547: entry: 0x00002b8a4a2da950 phdr: 0x00002b8a4a2d7040
phnum: 4
19547:
19547: file=libpgftnrtl.so [0]; needed by ./_gain.so [0]
19547: file=libpgftnrtl.so [0]; generating link map
19547: dynamic: 0x00002b8a4a54a3e8 base: 0x00002b8a4a41d000
size: 0x000000000012fd30
19547: entry: 0x00002b8a4a427ae0 phdr: 0x00002b8a4a41d040
phnum: 4
19547:
19547: file=libpgc.so [0]; needed by ./_gain.so [0]
19547: file=libpgc.so [0]; generating link map
19547: dynamic: 0x00002b8a4a6823c8 base: 0x00002b8a4a54d000
size: 0x0000000000137fa0
19547: entry: 0x00002b8a4a5560b0 phdr: 0x00002b8a4a54d040
phnum: 4
19547:
19547: file=libpgmp.so [0]; needed by ./_gain.so [0]
19547: file=libpgmp.so [0]; generating link map
19547: dynamic: 0x00002b8a4a79fd30 base: 0x00002b8a4a685000
size: 0x0000000000121828
19547: entry: 0x00002b8a4a689c10 phdr: 0x00002b8a4a685040
phnum: 4
19547:
19547: file=librt.so.1 [0]; needed by ./_gain.so [0]
19547: file=librt.so.1 [0]; generating link map
19547: dynamic: 0x0000003bd7d08d70 base: 0x0000000000000000
size: 0x00000000001190f0
19547: entry: 0x0000003bd7c02c90 phdr: 0x0000003bd7c00040
phnum: 9
19547:
19547: file=libnuma.so.1 [0]; needed by ./_gain.so [0]
19547: file=libnuma.so.1 [0]; generating link map
19547: dynamic: 0x0000003feaa04030 base: 0x0000000000000000
size: 0x00000000001047a0
19547: entry: 0x0000003fea9019e0 phdr: 0x0000003fea900040
phnum: 6
19547:
19547: file=libpgbind.so [0]; needed by ./_gain.so [0]
19547: file=libpgbind.so [0]; generating link map
19547: dynamic: 0x00002b8a4a8a7a08 base: 0x00002b8a4a7a7000
size: 0x0000000000100c20
19547: entry: 0x00002b8a4a7a7840 phdr: 0x00002b8a4a7a7040
phnum: 4
19547:
19547: file=libgomp.so.1 [0]; needed by ./_gain.so [0]
19547: file=libgomp.so.1 [0]; generating link map
Traceback (most recent call last):
File "structures/brugger/forward-gummel.py", line 17, in ?
from gain import *
File "./gain.py", line 7, in ?
import _gain
ImportError: libgomp.so.1: shared object cannot be dlopen()ed
19547:
19547: calling fini: /usr/lib64/libpython2.3.so.1.0 [0]
19547: calling fini: /lib64/tls/libpthread.so.0 [0]
19547: calling fini: /lib64/libdl.so.2 [0]
19547: calling fini: /lib64/libutil.so.1 [0]
19547: calling fini: /lib64/tls/libm.so.6 [0]
19547: calling fini: /lib64/tls/libc.so.6 [0]
19547:
Does this help you?