Install of FFTW on windows

Hello everyone,
I’m trying to make an FFT of signal that I read from an ASCII file
But I have a problem with the FFT! I even can’t run the example provided with root (FFT.C), I get an error message about libfftw3-3.dll.

how can I install FFTW3?
I’m using root in windows !!!

can anyone provide me with the steps to follow? i’m a beginner with root!! :confused:

Thank you in advance.



Cheers, Bertrand.

Thank you for your reply! I already saw this page but I didn’t understand what I should do! I downloaded the I unzip it. but I didn’t know what to do next! :frowning: can you please give me the steps to follow? that would be nice.

[quote=“Momos1989”]I downloaded the I unzip it.[/quote]Well, first of all, this is the wrong one. You must talke the 32bit one ( Then unzip it somewhere and add this “somewhere” to your PATH. That should be sufficient.

Cheers, Bertrand.

I downloaded the 64, because I have a 64 Operating system. Should I download the 32bit even if I hhave a 64bit Operating system?

How can I add the unziped folder to the path?? is it directly from the Root interactive session? and what is the command to use?

Thank you for your quick reply! :slight_smile:

Thank you so so much Mr.Bertrand!!! It works now!! I added the unziped folder to the PATH under windows environement and it works finally !!

Thank you so much for your help! :slight_smile:

[quote=“Momos1989”]I downloaded the 64, because I have a 64 Operating system. Should I download the 32bit even if I hhave a 64bit Operating system?[/quote]Yes, because ROOT is built in 32bit mode only.

The second one is to add it to the environment variables from the Windows advanced settings (if you don’t know how to do it, search this forum or Google for it, or see this page :wink:)

[quote=“Momos1989”]Thank you for your quick reply![/quote]You’re welcome :slight_smile:


My root is

  *                                         *
  *        W E L C O M E  to  R O O T       *
  *                                         *
  *   Version   5.34/36      5 April 2016   *
  *                                         *
  *  You are welcome to visit our Web site  *
  *            *
  *                                         *

ROOT 5.34/36 (v5-34-36@v5-34-36, Apr 05 2016, 10:25:45 on win32)

CINT/ROOT C/C++ Interpreter version 5.18.00, July 2, 2010
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.

I have installed root from binary file root_v5.34.36.win32.vc12.debug.exe.

I use VS2013 and W7.

When I try to use FFT in Root I have an error:

Error in <TWinNTSystem::DynamicPathName>: FFTW does not exist in ...
or has wrong file extension (.dll)
Error in <TVirtualFFT::FFT>: handler not found

where … includes a lot of text.

I downloaded from
I created .lib:

lib /def:libfftw3-3.def

and ignored warning:

Microsoft (R) Library Manager Version 12.00.40629.0
Copyright (C) Microsoft Corporation.  All rights reserved.

LINK : warning LNK4068: /MACHINE not specified; defaulting to X86
   Creating library libfftw3-3.lib and object libfftw3-3.exp

I added folder with libfftw3-3.dll in PATH environment variable.
I added libfftw3-3.lib in linker, folder with fftw3.h and libfftw3-3.lib in VS2013.
But I have the same error:

Error in <TWinNTSystem::DynamicPathName>: FFTW does not exist in ... C:\fftw-3.3.5-dll32; ...
or has wrong file extension (.dll)
Error in <TVirtualFFT::FFT>: handler not found

Should I rebuild root, using VS2013 and CMake?

Thank you in advance.
Best regards, Vladislav.

Hi Vladislav,

[quote=“Vladislav”]Should I rebuild root, using VS2013 and CMake?

Cheers, Bertrand.

Hi Bertrand,

I am facing a similar problem - needing to help a student to get to run ROOT on his Windows10 laptop… :frowning: (I really do not know anymore how to do things on windows).

We managed to get ROOT installed on windows by just double-clicking the exe file. For the FFTW (which is missing to run the programme correctly), we basically downloaded the FFTW-zip file and unzipped it into the root_vxxx/bin directory, because this directory is in the path and from the error output i see, I understand root looks for the dll/library file in there.

However it still does not work and I am wondering on whether I am missing a very basic step.

Or should we rather put the FFTW somewhre else and add it to the PATH (this is done via the COMMAND shell, right?)
and then re-install root?

Thanks & Best

Hi Kristin,

Well, to use ROOT & FFTW on Windows, you must first install FFTW, and then rebuild ROOT from source, specifying the fftw3 location. For example: cmake -Dall=ON -Dfftw3=ON -DFFTW_INCLUDE_DIR=C:/libs/fftw-3.1.2 -DFFTW_LIBRARY=C:/libs/fftw-3.1.2/libfftw3-3.lib c:\git\v5-34-00-patches

Cheers, Bertrand.