[PD-dev] fftw3 update to configure.am

Miller Puckette msp at ucsd.edu
Sun Jan 18 20:24:04 CET 2015


Hi Chuck -

It looks like this would then no longer work with fftw2 - is this a
problem, or is fftw3 widely enough distributed now that nobody will
need fftw2 comatibility?

thanks
Miller

On Sun, Jan 18, 2015 at 12:59:14PM -0600, Charles Z Henry wrote:
> pd-0.45.4 has the right code for FFTW3 but has the wrong configure.ac
> code to test for it.
> 
> fftw_one is a function in FFTW2, which plans a 1D FFT.  The comparable
> function in FFTW3 is fftw_plan_dft_1d
> 
> To get this to configure properly, you only need to change the name of
> the library and the function it looks for.  For the single precision
> fftw3 library ( libfftw3f.so ) the function is named
> sfftw_plan_dft_1d_ or sfftw_plan_dft_1d__
> 
> Before filing a bug, I wanted to get another set of eyes on it.  Does
> that function name look suspicious to anyone else?  I've confirmed the
> symbol is the same in the system installed 3.3.3 version of the
> library in ubuntu 14.04 and the custom compiled 3.3.4 version that I'm
> using.
> 
> To fix:
> 
> This section of code in configure.ac:
> dnl fftw v2
> AC_ARG_ENABLE([fftw],
>         [AS_HELP_STRING([--enable-fftw],
>                 [use FFTW package])],
>     [fftw=$enableval])
> if test x$fftw = xyes; then
>     AC_CHECK_LIB(fftw, fftw_one, [LIBS="$LIBS -lfftw"],
>         [AC_MSG_NOTICE([fftw package not found - using built-in FFT]); fftw=no])
> fi
> AM_CONDITIONAL(FFTW, test x$fftw = xyes)
> 
> becomes
> 
> dnl fftw v3
> AC_ARG_ENABLE([fftw],
>         [AS_HELP_STRING([--enable-fftw],
>                 [use FFTW package])],
>     [fftw=$enableval])
> if test x$fftw = xyes; then
>     AC_CHECK_LIB(fftw3f, sfftw_plan_dft_1d_, [LIBS="$LIBS -lfftw3f"],
>         [AC_MSG_NOTICE([fftw package not found - using built-in FFT]); fftw=no])
> fi
> AM_CONDITIONAL(FFTW, test x$fftw = xyes)
> 
> Then, I run:
> ./autogen.sh
> 
> and
> 
> ./configure --enable-jack --prefix=/home/chenry/pd-0.45.4
> --enable-fftw CFLAGS=-I/home/chenry/linalg/include
> LDFLAGS=-L/home/chenry/linalg/lib
> 
> Chuck
> 
> _______________________________________________
> Pd-dev mailing list
> Pd-dev at lists.iem.at
> http://lists.puredata.info/listinfo/pd-dev



More information about the Pd-dev mailing list