Julius 4.2を利用して、記述文法ファイル(hoge.grammar, hoge.voca)を mkdfa.plを使ってコンパイルしたらエラーした。
call.grammar has 1 rules
call.voca has 5 categories and 5 words
---
Error: Can't open grammar file "/tmp/g9356.grammar"
Error: cannot open "call.dfa.tmp"
---
no .dfa or .dict file generated
調べてみると、Juliusのバージョンが3.5.2ならばコンパイルが通るらしい。
(レベルダウンではないか!)
コンパイルのためだけに tempフォルダに旧バージョンのJuliusを落としてきてコンパイル。
Julius 3.5.2:
https://sourceforge.jp/projects/julius/downloads/21175/julius-3.5.2-win32bin.zip/
実行結果:
$ /cygdrive/c/temp/julius/bin/mkdfa.pl call
call.grammar has 1 rules
call.voca has 5 categories and 5 words
---
Now parsing grammar file
"rror: Lexical mistake "
---
no .dfa or .dict file generated
エラーの出方が変わった!
調べてみると、文法ファイルがShift-jisなのでエラーしている。
utf-8に変換してコンパイルすると、成功。
call.grammar has 1 rules
call.voca has 5 categories and 5 words
---
Now parsing grammar file
Now modifying grammar to minimize states[-1]
Now parsing vocabulary file
Now making nondeterministic finite automaton[6/6]
Now making deterministic finite automaton[6/6]
Now making triplet list[6/6]
---
generated: call.dfa call.term call.dict
参考URL