Installing FESTIVAL using Cygwin 1.3
message from Gerasimos Xydas
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Dear All,
This mail is not for asking help about a faulty compilation of FESTIVAL. Contrarily, it is for providing
some info about a (finally) successful compilation of FESTIVAL using Cygwin on Windows 2000. Hope that it
will be helpful for some people around. Probably, you might already know most of these, however, it is
worth mention them. Please, any comment welcome.
So, this document describes my experience and the steps for a successful compilation of festival using
Cygwin 1.3 on Windows (2000, I do not know about the rest versions). Note, that I did not use VC
compiler.
1. Install Cygwin 1.3
---------------------
no comments here
2. Remember to unzip everything using Cygwin "tar" tool and not WinZip
----------------------------------------------------------------------
a good thing to remember
3. Create festival and tmp directory
------------------------------------
Decide where you want to install festival and copy all the downloaded ".gz" files in there. Here, I
assume
"C:\festival".
Also, make a "C:\tmp" directory. It is required for festival to work properly.
--------------------------------------------------------
4. IMPORTANT! mount festival and tmp directory correctly
--------------------------------------------------------
If you continue with the compilation, it will succeed, and festival will seem to work great.
The tricky point here is when you type the command:
festival> libdir
where you will get something like:
(/cygdrive/c/festival/festival/lib)
What does that mean? When compiling using this version of Cygwin, Cygwin mounts your drive (e.g. "C:") in
a directory called "/cygdrive/c", which does not exist outside Cygwin (where you run FESTIVAL). This
means, that
FESTIVAL's default lib directory will be the non-existing one mentioned above.
This creates various of problems.
I tried to run festival with the --libdir flag, however, in this case SIOD functions failed (no idea why),
as I had compiled with /cygdrive/c/festival/festival/lib
The solution to overcome this (before compilation) is to take care about where cygwin will mount your
FESTIVAL directory.
Also, you will have to mount the "C:/tmp" directory because festival use this for (temporarily) storing
files.
So, in the bash shell of cygwin type:
mount -f -s -b "C:/festival" "/festival"
mount -f -s -b "C:/tmp" "/tmp"
You can also check/modify the registry for mounted directories:
HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2
5. Unzip the files (as normal) using "tar"
------------------------------------------
In the bash shell of cygwin type:
cd /festival
gzip -d *.gz
tar xvf speech_tools-1.2.2-release.tar
tar xvf festival-1.4.2-release.tar
tar xvf
------------------------------------
6. IMPORTANT! MODIFY A FILE
------------------------------------
In file
C:\festival\speech_tools\include\unix\EST_socket_unix.h
change line 61
#if defined(__CYGWIN__)
to
#if defined(__xCYGWIN__)
This has been reported by Miroslav Samek and it is caused because in the last release of
cygwin they put back the definition of socklen_t, as Rob Clark kindly informed me. So, this
modification
is needed in Cygwin 1.3
7. Compile as normal
---------------------------
cd speech_tools
make
[wait for compilation...]
cd ../festival
make
[wait for compilation...]
[done!]...?
_______________
Gerasimos Xydas
MSc in Distributed Systems
University of Athens
Department of Informatics and Telecommunications
Division of Communication and Signal Processing
tel: (+30) 10 7275320
_______________________________________________
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Sent Via festival-talk@cstr.ed.ac.uk
To unsubscribe mail majordomo@cstr.ed.ac.uk