forked from kaldi-asr/kaldi
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[tools] adding phonetisaurus install scripts (PR#1734)
* First provisional version of extras/install_phonetisaurus.sh script and update to .gitignore to add related tmp files. * Fix http checkout backoff to actually use http and not https, as per @psmit comment. Still need to add additional scripts to targeted Phonetisaurus revision before this pull should be accepted.
- Loading branch information
1 parent
d79e1c0
commit caaf6fa
Showing
2 changed files
with
92 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
#!/bin/bash | ||
set -u | ||
set -e | ||
|
||
|
||
# Make sure we are in the tools/ directory. | ||
if [ `basename $PWD` == extras ]; then | ||
cd .. | ||
fi | ||
|
||
! [ `basename $PWD` == tools ] && \ | ||
echo "You must call this script from the tools/ directory" && exit 1; | ||
|
||
# Install python-devel package if not already available | ||
# first, makes sure distutils.sysconfig usable | ||
# We are not currently compiling the bindings by default, but it seems | ||
# worth it to keep this section as we do have them and they will | ||
# probably be used. | ||
if ! $(python -c "import distutils.sysconfig" &> /dev/null); then | ||
echo "$0: WARNING: python library distutils.sysconfig not usable, this is necessary to figure out the path of Python.h." >&2 | ||
echo "Proceeding with installation." >&2 | ||
else | ||
# get include path for this python version | ||
INCLUDE_PY=$(python -c "from distutils import sysconfig as s; print s.get_config_vars()['INCLUDEPY']") | ||
if [ ! -f "${INCLUDE_PY}/Python.h" ]; then | ||
echo "$0 : ERROR: python-devel/python-dev not installed" >&2 | ||
if which yum >&/dev/null; then | ||
# this is a red-hat system | ||
echo "$0: we recommend that you run (our best guess):" | ||
echo " sudo yum install python-devel" | ||
fi | ||
if which apt-get >&/dev/null; then | ||
# this is a debian system | ||
echo "$0: we recommend that you run (our best guess):" | ||
echo " sudo apt-get install python-dev" | ||
fi | ||
exit 1 | ||
fi | ||
fi | ||
|
||
|
||
if [ ! -d ./phonetisaurus-g2p ] ; then | ||
git clone https://github.com/AdolfVonKleist/Phonetisaurus.git phonetisaurus-g2p || | ||
{ | ||
echo >&2 "$0: Warning: git clone operation ended unsuccessfully" | ||
echo >&2 " I will assume this is because you don't have https support" | ||
echo >&2 " compiled into your git " | ||
git clone http://github.com/AdolfVonKleist/Phonetisaurus.git phonetisaurus-g2p | ||
|
||
if [ $? -ne 0 ]; then | ||
echo >&2 "$0: Error git clone operation ended unsuccessfully" | ||
echo >&2 " Clone the github repository (https://github.com/AdolfVonKleist/Phonetisaurus.git)" | ||
echo >&2 " manually make and install in accordance with directions." | ||
fi | ||
} | ||
fi | ||
|
||
( | ||
export TOOLS=${PWD} | ||
cd phonetisaurus-g2p | ||
#checkout the current kaldi tag | ||
git checkout -b kaldi kaldi | ||
cd src | ||
./configure --with-openfst-includes=${TOOLS}/openfst/include --with-openfst-libs=${TOOLS}/openfst/lib | ||
make | ||
) | ||
|
||
( | ||
set +u | ||
[ ! -z "${PHONETISAURUS}" ] && \ | ||
echo >&2 "PHONETISAURUS variable is aleady defined. Undefining..." && \ | ||
unset PHONETISAURUS | ||
|
||
[ -f ./env.sh ] && . ./env.sh | ||
|
||
[ ! -z "${PHONETISAURUS}" ] && \ | ||
echo >&2 "PHONETISAURUS config is already in env.sh" && exit | ||
|
||
wd=`pwd` | ||
wd=`readlink -f $wd || pwd` | ||
|
||
echo "export PHONETISAURUS=\"$wd/phonetisaurus-g2p\"" | ||
echo "export PATH=\"\$PATH:\${PHONETISAURUS}/src/bin\"" | ||
) >> env.sh | ||
|
||
echo >&2 "Installation of PHONETISAURUS finished successfully" | ||
echo >&2 "Please source tools/env.sh in your path.sh to enable it" | ||
echo >&2 "NOTE: only the C++ binaries are compiled by default." | ||
echo >&2 " see the README.md file for details on installing the" | ||
echo >&2 " optional python bindings and supplementary scripts." |