2014-09-10 5 views
5

Wie installiere ich OpenFST?Verwenden von FST-Bibliotheken in Python

Ich habe es als solches zu tun:

wget http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-1.4.1.tar.gz 
tar -zxvf openfst-1.4.1.tar.gz 
cd openfst-1.4.1 
./configure 
make 
make install 

Gibt es eine andere Möglichkeit, dies zu installieren?

Eigentlich, was ich wollte schließlich ist OpenFST in Python zu verwenden, ich habe diesen Wrapper benutze: https://github.com/vchahun/pyfst

Nach OpenFST installieren, wenn pyfst Installation hatte ich folgendes Problem. Jeder weiß, wie zu lösen, dass ?:

$ sudo pip install pyfst 
.... 

error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 

---------------------------------------- 
Cleaning up... 
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/pyfst/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-O7BSyr-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/pyfst 
Traceback (most recent call last): 
    File "/usr/local/bin/pip", line 9, in <module> 
    load_entry_point('pip==1.5.5', 'console_scripts', 'pip')() 
    File "/usr/local/lib/python2.7/dist-packages/pip-1.5.5-py2.7.egg/pip/__init__.py", line 185, in main 
    return command.main(cmd_args) 
    File "/usr/local/lib/python2.7/dist-packages/pip-1.5.5-py2.7.egg/pip/basecommand.py", line 161, in main 
    text = '\n'.join(complete_log) 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 42: ordinal not in range(128) 

Aber gibt es eine reine Python-Port von OpenFST?

+0

Die Fehlermeldung bedeutet grundsätzlich, dass Sie 'gcc' nicht installiert haben. – tripleee

Antwort

3

Da OpenFST 1.5 veröffentlicht wurde, enthält es jetzt einen Python-Wrapper. In 1.5.3 ist dieser Wrapper viel umfangreicher als die Handvoll unabhängiger OpenFST Python-Wrapper. Ich kenne keine Python-FST-Implementierungen. Zu dieser Zeit gibt es sicherlich keine bekannten.