Skip to content

fix: FFTW linkage in CMake

Cristian Le requested to merge LecrisUT/octopus:fix/fftw into main

Fix:

  • Linkage with fftw3-omp/fftw3-threads. Seems these libraries do not export the full fftw interface, only the openmp wrapper? Not sure how they work there
  • Linkage with fftw3-mpi. Honestly this variant should just be dropped. Apparently it even lacks some symbols:
$ readelf -Ws --dyn-syms /usr/lib64/libfftw3.so
    79: 00000000001052f0    43 FUNC    GLOBAL DEFAULT   14 fftw_plan_dft_r2c_1d
   126: 0000000000105380    69 FUNC    GLOBAL DEFAULT   14 fftw_plan_dft_r2c_2d
$ readelf -Ws --dyn-syms /usr/lib64/openmpi/lib/libfftw3_mpi.so
(no fftw_mpi_plan_dft_r2c_1d)
   121: 0000000000011550    71 FUNC    GLOBAL DEFAULT   14 fftw_mpi_plan_dft_r2c_2d
$ readelf -Ws --dyn-syms /usr/lib64/libfftw3_omp.so
    58: 0000000000004a10   108 FUNC    GLOBAL DEFAULT   14 fftw_init_threads
(no fftw_*_plan_dft_r2c_1d)
(no fftw_*_plan_dft_r2c_2d)
Edited by Cristian Le

Merge request reports