[lammps-users] checking if compiled fftw is included

Hi there!

I compiled lammps after compiling fftw. I set all the variables in the makefile and added the location of the fftw library to the LD_LIBRARY_PATH while the make session was running.

The compile ends correctly and kspace calculations can be done. However, when I do ldd, I do not see the path to my fftw215 version ( /opt/software/fftw215/lib )

enzo:/install/software/lammps-12Mar11/src # ldd lmp_enzo
linux-vdso.so.1 => (0x00007fff029ff000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f5b7685d000)
libmpi_cxx.so.0 => /opt/software/mpi/openmpi-1.4.2/gcc64/lib/libmpi_cxx.so.0 (0x00007f5b76642000)
libmpi.so.0 => /opt/software/mpi/openmpi-1.4.2/gcc64/lib/libmpi.so.0 (0x00007f5b76397000)
libopen-rte.so.0 => /opt/software/mpi/openmpi-1.4.2/gcc64/lib/libopen-rte.so.0 (0x00007f5b7614a000)
libopen-pal.so.0 => /opt/software/mpi/openmpi-1.4.2/gcc64/lib/libopen-pal.so.0 (0x00007f5b75ef5000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f5b75cf1000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f5b75ad9000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007f5b758d6000)
libm.so.6 => /lib64/libm.so.6 (0x00007f5b75681000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f5b7546a000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5b7524e000)
libc.so.6 => /lib64/libc.so.6 (0x00007f5b74ef3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5b76b6b000)

But I do see some mentions of the include in the Object files:

enzo:/install/software/lammps-12Mar11/src # grep fftw Obj_enzo/*
Obj_enzo/fft3d.d: /opt/software/fftw215/include/fftw.h remap.h
Übereinstimmungen in Binärdatei Obj_enzo/fft3d.o.
Obj_enzo/fft3d_wrap.d: /opt/software/fftw215/include/fftw.h /usr/include/stdlib.h
Übereinstimmungen in Binärdatei Obj_enzo/fft3d_wrap.o.
Obj_enzo/pppm.d: /opt/software/fftw215/include/fftw.h remap_wrap.h remap.h memory.h \

Did the compilation go correctly?

Hi there!

I compiled lammps after compiling fftw. I set all the variables in the
makefile and added the location of the fftw library to the LD_LIBRARY_PATH
while the make session was running.

The compile ends correctly and kspace calculations can be done. However,
when I do ldd, I do not see the path to my fftw215 version (
/opt/software/fftw215/lib )

enzo:/install/software/lammps-12Mar11/src # ldd lmp_enzo
linux-vdso.so.1 => (0x00007fff029ff000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f5b7685d000)
libmpi_cxx.so.0 =>
/opt/software/mpi/openmpi-1.4.2/gcc64/lib/libmpi_cxx.so.0
(0x00007f5b76642000)
libmpi.so.0 => /opt/software/mpi/openmpi-1.4.2/gcc64/lib/libmpi.so.0
(0x00007f5b76397000)
libopen-rte.so.0 =>
/opt/software/mpi/openmpi-1.4.2/gcc64/lib/libopen-rte.so.0
(0x00007f5b7614a000)
libopen-pal.so.0 =>
/opt/software/mpi/openmpi-1.4.2/gcc64/lib/libopen-pal.so.0
(0x00007f5b75ef5000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f5b75cf1000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f5b75ad9000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007f5b758d6000)
libm.so.6 => /lib64/libm.so.6 (0x00007f5b75681000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f5b7546a000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5b7524e000)
libc.so.6 => /lib64/libc.so.6 (0x00007f5b74ef3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5b76b6b000)

But I do see some mentions of the include in the Object files:

enzo:/install/software/lammps-12Mar11/src # grep fftw Obj_enzo/*
Obj_enzo/fft3d.d: /opt/software/fftw215/include/fftw.h remap.h
Übereinstimmungen in Binärdatei Obj_enzo/fft3d.o.
Obj_enzo/fft3d_wrap.d: /opt/software/fftw215/include/fftw.h
/usr/include/stdlib.h \
Übereinstimmungen in Binärdatei Obj_enzo/fft3d_wrap.o.
Obj_enzo/pppm.d: /opt/software/fftw215/include/fftw.h remap_wrap.h remap.h
memory.h \

Did the compilation go correctly?

possibly. if pppm works, it is there.

you won't see a dependency on the fftw library,
if fftw has only been compiled as a static library.

axel.