FlowDesigner Installation Guide
From FDWiki
What you need
Note : this needs to be updated
- An ANSI C++ compiler
- gcc 3.x or later
- HP's aCC should work after some minor modifications
- autoconf, automake, libtool (which require perl and m4)
- GNU make
- FFTW (now optional, but recommended) compiled with -enable-float
- GNOME (including the development libraries and libxml2)
- pthreads (now part of libc in most Linux distributions)
Compilation flags
If you are using gcc, you can control optimization with the CFLAGS and CXXFLAGS environment variables. For use on a Pentium III or an Athlon XP, we suggest to set both CFLAGS and CXXFLAGS to: '-O3 -march=pentiumpro -D_ENABLE_SSE'. For T-bird Athlon, we suggest replacing -D_ENABLE_SSE by -D_ENABLE_3DNOW. This must be done before running configure. Also, note that the default flags used if CFLAGS and CXXFLAGS are not set are '-O2 -g'. It is strongly recommended not to compile FlowDesigner with -g unless you're really desperate, as the binaries might take up to 600 MB of disk space (instead of 6-10 MB otherwise) due to the C++ name mangling.
Configure options
- -with-libtool-ld=<c++ compiler> You need to specify this option if libtool tries to use ld to link the C++ libraries and executables. These need to be linked with the C++ compiler (e.g. g++) because of initializations that must be performed before the main() starts (On Linux you most likely don't need that).
- -with-fftw-dir=<fftw path> If FFTW is not installed in a standard path, you will need to specify this option.
- -disable-static This option is required. FlowDesigner does not work with static libraries (because it uses dlopen).
- -disable-<package> Doesn't build a certain package (<package> is HMM, VQ, NNet, ...)
Compiling & Installing the software
To compile, type:
% ./configure -disable-static -prefix=<your install directory> % make % make install
Notes: * As of version 0.5.1, it is now recommended to set the install prefix to /usr or /usr/local, unless you want to keep more than one version installed at the same time. * If you are using a CVS tarball, you need to use ./autogen.sh instead of ./configure * You might also need to set your LD_LIBRARY_PATH to <flowdesigner prefix>/lib
You can now start the FlowDesigner environment by typing :
% flowdesigner (assuming <flowdesigner prefix>/bin is in your path)
Compiling on Win32
We are working on a full WIN32 build. More information are available here.
Troubleshooting
The binary distribution I downloaded crashes on startup
There can be many causes of that. The most common is that you have a different libstdc++ than the one FlowDesigner was compiled with. Another cause could be that you have FFTW compiled without -enable-float, while FlowDesigner was linked with a float version of FFTW. FlowDesigner has no way to detect that so it crashes. In both cases, the best thing to do is to build FlowDesigner yourself.
I compiled FlowDesigner myself and it crashes on startup
The main cause for this is a bug/missing feature in libtool that prevents it from working correctly with C++ on some platforms. This happens mostly on non-Linux platforms though not always. If you suspect that's your problem, try running configure with the -libtool-ld=g++ option.
FlowDesigner tells me it cannot find libflow.so
This can happen if you compile FlowDesigner and then move the installation directory (It can sometimes happen for other reasons). You can set the LD_LIBRARY_PATH to <flowdesigner install dir>/lib. Note that if you moved the FlowDesigner directory, you'll also need to set FLOWDESIGNER_HOME.
The ``New Node menu is empty
You probably moved the FlowDesigner install directory, see 3). Another possibility is if you compiled with -enable-static flag. Because FlowDesigner toolboxes are dynamically loaded, everything must be compiled as shared libraries (which is the default in configure).
FlowDesigner doesn't compile on my box
First, make sure you have the latest release version. If it doesn't work, you should try the CVS version. If it fails too, please contact us and we'll do our best to make FlowDesigner compile on your platforms.
I downloaded a more recent version and it doesn't even compile
This can be due to the fact that you installed an earlier version (0.5.0 and earlier) in a path like /usr or /usr/local. The problem is that the old FlowDesigner includes ended up somewhere like /usr/include so when you try compiling a newer version, g++ sees the old includes (because they are in the include path) instead of the new ones.

