質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。

Q&A

解決済

2回答

2526閲覧

Python : pip install pyaudioがエラーになります。

R34lity

総合スコア5

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。

0グッド

0クリップ

投稿2020/02/25 06:12

閲覧ありがとうございます。
[pip install ○○○]でnumpyやscipyといったモジュールはインストールできるのですが、pyaudioだけがどうしても出来ません。
[pip install pyaudio]を実行すると下記の様なエラーメッセージが表示されます。
どうすればよろしいのでしょうか?
回答よろしくお願いいたします。

環境

OS:Ubuntu 19.10
Pythonバージョン:3.8.1
pipバージョン:20.0.2

エラーメッセージ

bash

1(Python3.8.1) r34lity@R34lity-CFLX6:~/Python3.8.1$ pip install pyaudio 2Collecting pyaudio 3 Using cached PyAudio-0.2.11.tar.gz (37 kB) 4 ERROR: Command errored out with exit status 1: 5 command: /home/r34lity/.pyenv/versions/3.8.1/envs/Python3.8.1/bin/python3.8 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-vp3cidl6/pyaudio/setup.py'"'"'; __file__='"'"'/tmp/pip-install-vp3cidl6/pyaudio/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-vp3cidl6/pyaudio/pip-egg-info 6 cwd: /tmp/pip-install-vp3cidl6/pyaudio/ 7 Complete output (11 lines): 8 Traceback (most recent call last): 9 File "<string>", line 1, in <module> 10 File "/home/r34lity/.pyenv/versions/3.8.1/envs/Python3.8.1/lib/python3.8/site-packages/setuptools/__init__.py", line 19, in <module> 11 from setuptools.dist import Distribution, Feature 12 File "/home/r34lity/.pyenv/versions/3.8.1/envs/Python3.8.1/lib/python3.8/site-packages/setuptools/dist.py", line 36, in <module> 13 from setuptools import windows_support 14 File "/home/r34lity/.pyenv/versions/3.8.1/envs/Python3.8.1/lib/python3.8/site-packages/setuptools/windows_support.py", line 2, in <module> 15 import ctypes 16 File "/home/r34lity/.pyenv/versions/3.8.1/lib/python3.8/ctypes/__init__.py", line 7, in <module> 17 from _ctypes import Union, Structure, Array 18 ModuleNotFoundError: No module named '_ctypes' 19 ---------------------------------------- 20ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output. 21

試したこと

  • PortAudioは導入しています。
  • 環境はpipのみでcondaは導入しておりません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

quickquip

2020/02/25 06:35 編集

「PortAudioは導入しています」はUbuntuパッケージの portaudio19-dev のことでいいですか? それとも libportaudio2 だけですか? 必要なのは前者のようですが。あるいはそれ以外の方法? (こういう情報は日本語ではない方が曖昧性がないのでいいですよ)
guest

回答2

0

ベストアンサー

pyenv(-virtualenv)で作った環境のようですが、標準ライブラリ内でエラーが発生しているので、そもそもまともに機能していないようです。

以下を参考にPythonのビルドに必要なパッケージをOSに導入し、その後pyenv(-virtualenv)の環境を作り直すことで解消するかもしれません。

Common build problems · pyenv/pyenv Wiki


いずれにせよPythonの環境構築をやり直すことになる可能性が高いので、構築方針を見直す機会にしても良いかもしれません。

たとえば、Pythonのマイナーバージョンまでの管理が必要でなければ、aptなどOS側のパッケージマネージャで管理するという方針もありでしょう。また、python本体のバージョンにはこだわらないがシステムのpythonをいじりたくない/システムのpythonとは別に複数の環境を管理したいという場合、venv, pipenv, poetryなどの仮想環境ツールを用いることもできます(これらはpythonライブラリの切り分けが目的)。

投稿2020/02/25 06:39

編集2020/02/25 09:11
hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

R34lity

2020/02/25 07:16

システム領域と分けたいと思ってPyenvを用いて仮想化していましたが、aptで管理することにいたしました。 回答ありがとうございました。
quickquip

2020/02/25 07:39 編集

仮想化に使ったのは pyenv ではなくて pyenv-virtualenv じゃないですか? (この2つは目的も思想も、ぜんぜん違うものかと)
hayataka2049

2020/02/25 08:15

> quiquiさん ご指摘ありがとうございます。 envsディレクトリが生えているのでpyenv-virtualenvの方だろう、という主旨で合っていますか? > R34lityさん そういうモチベーションがある場合は、できるだけ仮想環境を活用した方が良いかとは思います。venvやpipenv, poetryなどを調べると良いのでは。もちろんpyenv(-virtualenv)にメリットを見出すならこちらで改めて挑戦されるのも良いかと思います。
quickquip

2020/02/25 08:50

そうですね。pyenv-virtualenvの感じがするのですけれど、質問者さんが「システム領域と分けたいと思ってPyenvを用いて仮想化していましたが」と返答したのが気になったのです。 pyenv-virtualenv固有の問題である可能性を切り捨ててよいか、という疑問はちょっと残りますが、回答自体に異論はないです。
hayataka2049

2020/02/25 09:12 編集

了解です。回答を修正して反映させていただきました。
R34lity

2020/02/25 15:40

追記ありがとうございます。 大学の講義で初めてPythonの世界に触れ、自分でも色々と触ってみたいと考え右往左往していました。もっと勉強したいと思います。 hayataka2049様、quiqui様、ありがとうございました。
guest

0

解決しましたか?

ラズパイにインストールできましたよ。

pi@raspberrypi2:~ $ pip install pyaudio
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting pyaudio
Using cached PyAudio-0.2.11.tar.gz (37 kB)
Installing collected packages: pyaudio
Running setup.py install for pyaudio ... done
Successfully installed pyaudio-0.2.11

pi@raspberrypi2:~ $ python -V
Python 3.8.1

投稿2020/02/25 07:26

technocore

総合スコア7247

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問