Re: libgomp and python: dlopen fails

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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?

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux