Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pfft does not link itself to fftw3-mpi.so #40

Open
LecrisUT opened this issue Jan 19, 2024 · 0 comments
Open

Pfft does not link itself to fftw3-mpi.so #40

LecrisUT opened this issue Jan 19, 2024 · 0 comments

Comments

@LecrisUT
Copy link

For example, the library built from easybuild produces:

$ readelf -d $EBROOTPFFT/lib/libpfft.so

Dynamic section at offset 0x2ed38 contains 30 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libmpi.so.40]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libpfft.so.0]
 0x000000000000001d (RUNPATH)            Library runpath: [/opt/EasyBuild/2022a/software/OpenMPI/4.1.4-GCC-11.3.0/lib:/opt/EasyBuild/2022a/software/hwloc/2.7.1-GCCcore-11.3.0/lib:/opt/EasyBuild/2022a/software/libevent/2.1.12-GCCcore-11.3.0/lib]
 0x000000000000000c (INIT)               0x8000
 0x000000000000000d (FINI)               0x26abc
 0x0000000000000019 (INIT_ARRAY)         0x2fd28
 0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
 0x000000000000001a (FINI_ARRAY)         0x2fd30
 0x000000000000001c (FINI_ARRAYSZ)       8 (bytes)
 0x0000000000000004 (HASH)               0x200
 0x000000006ffffef5 (GNU_HASH)           0xcb0
 0x0000000000000005 (STRTAB)             0x3e40
 0x0000000000000006 (SYMTAB)             0x1710
 0x000000000000000a (STRSZ)              9421 (bytes)
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000003 (PLTGOT)             0x30000
 0x0000000000000002 (PLTRELSZ)           5832 (bytes)
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000017 (JMPREL)             0x68f8
 0x0000000000000007 (RELA)               0x66b8
 0x0000000000000008 (RELASZ)             576 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x000000006ffffffe (VERNEED)            0x6658
 0x000000006fffffff (VERNEEDNUM)         2
 0x000000006ffffff0 (VERSYM)             0x630e
 0x000000006ffffff9 (RELACOUNT)          3
 0x0000000000000000 (NULL)               0x0

But pfft itself is calling functions specific to fftw3-mpi.so:

/opt/EasyBuild/2022a/software/binutils/2.38-GCCcore-11.3.0/bin/ld: /opt_buildbot/linux-debian11/sandybridge/EasyBuild/2022a/software/PFFT/1.0.8-alpha-foss-2022a/lib64/libpfft.so: undefined reference to `fftw_mpi_init'
/opt/EasyBuild/2022a/software/binutils/2.38-GCCcore-11.3.0/bin/ld: /opt_buildbot/linux-debian11/sandybridge/EasyBuild/2022a/software/PFFT/1.0.8-alpha-foss-2022a/lib64/libpfft.so: undefined reference to `fftw_mpi_execute_r2r'
/opt/EasyBuild/2022a/software/binutils/2.38-GCCcore-11.3.0/bin/ld: /opt_buildbot/linux-debian11/sandybridge/EasyBuild/2022a/software/PFFT/1.0.8-alpha-foss-2022a/lib64/libpfft.so: undefined reference to `fftw_mpi_plan_many_transpose'
/opt/EasyBuild/2022a/software/binutils/2.38-GCCcore-11.3.0/bin/ld: /opt_buildbot/linux-debian11/sandybridge/EasyBuild/2022a/software/PFFT/1.0.8-alpha-foss-2022a/lib64/libpfft.so: undefined reference to `fftw_mpi_local_size_many_transposed'
/opt/EasyBuild/2022a/software/binutils/2.38-GCCcore-11.3.0/bin/ld: /opt_buildbot/linux-debian11/sandybridge/EasyBuild/2022a/software/PFFT/1.0.8-alpha-foss-2022a/lib64/libpfft.so: undefined reference to `fftw_mpi_cleanup'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant