安装pyaudio时,pip在/ usr / local / include中找不到portaudio.h

时间:2015-11-04 04:10:11

标签: python macos pyaudio

我正在使用mac osx 10.10 正如PyAudio主页所说,我使用

安装PyAudio
brew install portaudio 
pip install pyaudio

portaudio的安装似乎很成功,我可以在/ usr / local / include和/ usr / local / lib中找到头文件和库 但是当我尝试安装pyaudio时,它给了我一个错误

src/_portaudiomodule.c:29:10: fatal error: 'portaudio.h' file not found
#include "portaudio.h"
         ^
1 error generated.
error: command 'cc' failed with exit status 1

实际上它位于/ usr / local / include中 为什么它找不到文件? 类似问题的一些答案对我不起作用(比如使用virtualenv,或手动编译),我想找到一种简单的方法来解决这个问题。

10 个答案:

答案 0 :(得分:97)

由于pyAudioportAudio作为依赖项,因此首先必须安装portaudio。

brew install portaudio

然后尝试:pip install pyAudio。如果在安装portAudio后问题仍然存在,则可以指定编译器能够找到源程序的目录路径(例如:portaudio.h)。由于标题应位于/usr/local/include目录中:

pip install --global-option='build_ext' --global-option='-I/usr/local/include' --global-option='-L/usr/local/lib' pyaudio

答案 1 :(得分:6)

您必须首先安装portaudio然后链接该文件。只有这样你才能找到那个头文件(即portaudio.h)。要使用HomeBrew程序在mac中安装portaudio,请使用以下命令。

brew install portaudio
sudo brew link portaudio
sudo pip install pyaudio

答案 2 :(得分:6)

在Raspbian上:

sudo apt-get install python-pyaudio

答案 3 :(得分:4)

在Centos上:

yum install -y portaudio portaudio-devel && pip install pyaudio

答案 4 :(得分:4)

在Ubuntu版本上:

sudo apt-get install python-pyaudio

对于Python3:

sudo apt-get install python3-pyaudio

答案 5 :(得分:3)

对于我10.10.5,路径在/ opt / local下。我必须将/ opt / local / bin添加到我的/ etc / paths文件中。有效的命令行是

sudo pip install --global-option ='build_ext' - global-option =' - I / opt / local / include'-- global-option =' - L / opt / local / lib'pyaudio

答案 6 :(得分:2)

仅供使用MacPorts而不是Homebrew的人员记录:

$ [sudo] port install portaudio
$ pip install pyaudio --global-option="build_ext"  --global-option="-I/opt/local/include" --global-option="-L/opt/local/lib"

答案 7 :(得分:1)

我需要执行以下操作才能在Debian上安装PortAudio

sudo apt install portaudio19-dev

在那之前我也apt installpython3-portaudio,尽管那没有用。我不确定这是否也有贡献。

答案 8 :(得分:0)

首先,您可以使用brew来安装portaudio。

  

brew install portaudio

然后尝试找到portaudio路径 sudo find / -name“portaudio.h”

就我而言,它是bar

运行以下命令安装pyaudio

  

pip install --global-option ='build_ext' - global-option =' - I / usr / local / Cellar / portaudio / 19.6.0 / include'-- global-option =' - L / usr / local / Cellar / portaudio / 19.6.0 / lib'pyaudio

答案 9 :(得分:0)

如果您正在使用anaconda / miniconda管理python环境,那么

conda install pyaudio

portaudio同时安装pyaudio

The following NEW packages will be INSTALLED:

  portaudio          pkgs/main/osx-64::portaudio-19.6.0-h647c56a_4
  pyaudio            pkgs/main/osx-64::pyaudio-0.2.11-py37h1de35cc_2