web-dev-qa-db-ja.com

pocketsphinxのインストールpython module:コマンド 'swig.exe'が失敗しました

私はこのようなものを得ています。誰でもこれを修正する方法を教えてください。

C:\Users\krush\Documents\ML using Python>pip install pocketsphinx
Collecting pocketsphinx
  Using cached pocketsphinx-0.1.3.Zip
Building wheels for collected packages: pocketsphinx
  Running setup.py bdist_wheel for pocketsphinx: started
  Running setup.py bdist_wheel for pocketsphinx: finished with status 'error'
  Complete output from command C:\Users\krush\Anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\krush\\AppData\\Local\\Temp\\pip-build-cns2i_wb\\pocketsphinx\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d C:\Users\krush\AppData\Local\Temp\tmp3tyvnl9wpip-wheel- --python-tag cp36:
  running bdist_wheel
  running build_ext
  building 'sphinxbase._ad' extension
  swigging swig/sphinxbase/ad.i to swig/sphinxbase/ad_wrap.c
  swig.exe -python -modern -Ideps/sphinxbase/include -Ideps/sphinxbase/include/sphinxbase -Ideps/sphinxbase/include/win32 -Ideps/sphinxbase/swig -outdir sphinxbase -o swig/sphinxbase/ad_wrap.c swig/sphinxbase/ad.i
  error: command 'swig.exe' failed: No such file or directory

  ----------------------------------------
  Failed building wheel for pocketsphinx
  Running setup.py clean for pocketsphinx
Failed to build pocketsphinx
Installing collected packages: pocketsphinx
  Running setup.py install for pocketsphinx: started
    Running setup.py install for pocketsphinx: finished with status 'error'
    Complete output from command C:\Users\krush\Anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\krush\\AppData\\Local\\Temp\\pip-build-cns2i_wb\\pocketsphinx\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\krush\AppData\Local\Temp\pip-x5mxeczy-record\install-record.txt --single-version-externally-managed --compile:
    running install
    running build_ext
    building 'sphinxbase._ad' extension
    swigging swig/sphinxbase/ad.i to swig/sphinxbase/ad_wrap.c
    swig.exe -python -modern -Ideps/sphinxbase/include -Ideps/sphinxbase/include/sphinxbase -Ideps/sphinxbase/include/win32 -Ideps/sphinxbase/swig -outdir sphinxbase -o swig/sphinxbase/ad_wrap.c swig/sphinxbase/ad.i
    error: command 'swig.exe' failed: No such file or directory

    ----------------------------------------
Command "C:\Users\krush\Anaconda3\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\krush\\AppData\\Local\\Temp\\pip-build-cns2i_wb\\pocketsphinx\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\krush\AppData\Local\Temp\pip-x5mxeczy-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\krush\AppData\Local\Temp\pip-build-cns2i_wb\pocketsphinx\
7
Krushi Raj

この問題を解決するために、私は Windows用のSwig をダウンロードしました

  1. Swig.exeをpythonインストールフォルダーにコピー(ex C:/ python27の場合)

  2. Swigwin-3.0.12/Libフォルダーを開き、すべての* .swgファイルをC:/ python27/libまたは同等のpythonパスにコピーします

  3. Swigwin-3.0.12/lib/pythonを開き、すべてのファイルを(C:/ python27/lib)にコピーします

(PythonがインストールされているためのMicrosoft Visual C++ Compilerがあることも確認してください)

これらの手順はうまくいきました。

11

pocketsphinxとともにpipをインストールしようとすると、このモジュールがダウンロードおよびコンパイルされます。 swigのようなコンパイルツールが必要です。

別の解決策は、pocketsphinxのバイナリバージョンをインストールすることです。バイナリバージョン here をダウンロードできます。インストールに関して正しいバージョンを選択する必要があります。

どのバージョンをダウンロードする必要があるかを判断するには、次のコマンドを実行します。これにより、必要なバージョンと、32ビットまたは64ビットのどちらを実行するかがわかりますpythonインタープリター。

"C:\Users\krush\Anaconda3\python.exe" --version
"C:\Users\krush\Anaconda3\python.exe" -c "import struct;print(struct.calcsize('P') * 8)"

以下は、正しいバージョンをダウンロードしたら入力できるコマンドです。

"C:\Users\krush\Anaconda3\python.exe" -m pip install pocketsphinx‑0.1.3‑cp35‑cp35m‑win32.whl
"C:\Users\krush\Anaconda3\python.exe" -m pip install pocketsphinx‑0.1.3‑cp36‑cp36m‑win_AMD64.whl
9

SwigファイルをPythonフォルダーにコピーする代わりに、Swigの場所を環境変数に追加できます。

  1. 押す Ctrl+S
  2. envと入力し、Enterを押します
  3. Pathをダブルクリックします
  4. path-to-Swigを最後の空白行に追加します
  5. OKをクリックして、PCを再起動します
5
W Barreto
conda install swig
pip install pocketsphinx

他の人が提案しているセットアップをすべてやりたくなかったので、これを試してみましたが、うまくいきました。これはおそらく、Anaconadaを使用している場合にのみ機能します。

3
Jaideep Heer

また、ubuntu 16.04にインストール中に次のコマンドを実行しても同じエラーが発生しました。

Sudo apt-get install -y python python-dev python-pip build-essential swig git libpulse-dev

Sudo pip install pocketsphinx

ソース: pocketsphinx-python

2
Ramesh Kumar

アナコンダナビゲータで作業している場合。
環境に行くだけです。
swigを検索すると、パッケージが表示されます。パッケージを選択し、適用ボタンをクリックします。また、swigとともにインストールする必要がある他の依存関係のプロンプトリストも提供します。
だからすべてを選択して、適用ボタンをクリックしてください。
すべての依存関係は、anacondaのルートディレクトリにインストールされます。

これは私のために働いた、それが役立つことを願っています。

2
ambar mishra

これを解決するコマンドのセットはほとんどありません。それらを実行するだけです:

Sudo apt-get install -y python3 python3-dev python3-pip build-essential swig git libpulse-dev

Sudo apt-get install libasound2-dev

Sudo pip install pocketsphinx
0
Nitish nagar