【问题标题】:Cannot install PyAudio 0.2.11 in ubuntu 16.04无法在 ubuntu 16.04 中安装 PyAudio 0.2.11
【发布时间】:2017-06-14 07:54:19
【问题描述】:

我从https://pypi.python.org/pypi/PyAudio 下载了 PyAudio 0.2.11 tar 文件并运行以下命令:

sudo python setup.py install

我收到以下错误:

running install

Checking .pth file support in /usr/local/lib/python3.5/dist-packages/
/usr/bin/python3 -E -c pass

TEST PASSED: /usr/local/lib/python3.5/dist-packages/ appears to support .pth files

running bdist_egg

running egg_info

writing top-level names to src/PyAudio.egg-info/top_level.txt

writing src/PyAudio.egg-info/PKG-INFO

writing dependency_links to src/PyAudio.egg-info/dependency_links.txt

reading manifest file 'src/PyAudio.egg-info/SOURCES.txt'

reading manifest template 'MANIFEST.in'

writing manifest file 'src/PyAudio.egg-info/SOURCES.txt'

installing library code to build/bdist.linux-x86_64/egg

running install_lib

running build_py

running build_ext

building '_portaudio' extension

x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.5m -c src/_portaudiomodule.c -o build/temp.linux-x86_64-3.5/src/_portaudiomodule.o
src/_portaudiomodule.c:28:20: fatal error: Python.h: No such file or directory

compilation terminated.

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

如何才能安装成功?

我什至尝试过这个“git clone https://people.csail.mit.edu/hubert/git/pyaudio.git”,但在编译时它显示以下错误:

src/_portaudiomodule.c:28:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

为了编译,我使用了这个命令:sudo python3 setup.py install

【问题讨论】:

标签: python ubuntu pyaudio


【解决方案1】:

Python 第一个软件要求是 Python 2.6、2.7 或 Python 3.3+。这是使用库所必需的。

PyAudio(适用于麦克风用户) 当且仅当您想使用麦克风输入(麦克风)时才需要 PyAudio。需要 PyAudio 0.2.11+ 版本,因为早期版本在某些情况下从麦克风录制时已知内存管理错误。

如果未安装,库中的所有内容仍可正常工作,但尝试实例化 Microphone 对象会引发 AttributeError。

PyAudio 网站上的安装说明非常好——为方便起见,总结如下:

在 Windows 上,使用 Pip 安装 PyAudio:在终端中执行 pip install pyaudio。

在 Debian 派生的 Linux 发行版(如 Ubuntu 和 Mint)上,使用 APT 安装 PyAudio:在终端中执行 sudo apt-get install python-pyaudio python3-pyaudio。 如果存储库中的版本太旧,请使用 Pip 安装最新版本:执行 sudo apt-get install portaudio19-dev python-all-dev python3-all-dev && sudo pip install pyaudio(如果使用 Python 3,请将 pip 替换为 pip3)。

在 OS X 上,使用 Homebrew 安装 PortAudio:brew install portaudio。然后,使用 Pip 安装 PyAudio:pip install pyaudio。

在其他基于 POSIX 的系统上,使用您选择的包管理器安装 portaudio19-dev 和 python-all-dev(或 python3-all-dev,如果使用 Python 3)包(或它们最接近的等价物),然后使用 Pip 安装 PyAudio:pip install pyaudio(如果使用 Python 3,请将 pip 替换为 pip3)。

为方便起见,包含用于 Windows 和 Linux 上常见 64 位 Python 版本的 PyAudio Wheel 包,位于存储库根目录下的 third-party/ 目录下。要安装,只需在存储库根目录中运行 pip install wheel,然后运行 ​​pip install ./third-party/WHEEL_FILENAME(如果使用 Python 3,请将 pip 替换为 pip3)。

【讨论】:

    【解决方案2】:

    什么都试过了。唯一对我有用的方法是从https://pypi.org/project/PyAudio/#files下载文件并安装它

    【讨论】:

    • 你是怎么安装的?也许你可以在这里分享这些步骤
    • 首先使用 [ sudo apt-get install portaudio19-dev ] 安装 portaudio v19 库,然后 cd 到您提取 zip 的文件夹并使用 [ python setup.py install ] 安装 Pyaudio 跨度>
    【解决方案3】:
    sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0
    sudo apt-get install ffmpeg libav-tools
    sudo apt-get install python-pyaudio
    

    从您的终端

    【讨论】:

    • 如果你没有 pip,sudo apt-get install python-pip
    • 伟大的兄弟@sudoprogrammer.sh 忘了提到这一点。谢谢
    • 编译终止。错误:命令“x86_64-linux-gnu-gcc”失败,退出状态为 1
    • 尝试过,但编译再次终止。错误:命令“x86_64-linux-gnu-gcc”失败,退出状态为 1
    • 我给的都一一安装了吗?好的尝试 sudo pip install python-pyaudio
    【解决方案4】:

    这对我有用:

    sudo pip install --upgrade pyaudio
    

    【讨论】:

      【解决方案5】:

      您在https://pypi.python.org/pypi/PyAudio#downloads 下载 PyAudio-0.2.11.tar.gz (md5) 并提取文件。

      • cd PyAudio-0.2.11

      • sudo python setup.py install

      你看:

      running install 
      running bdist_egg
      running egg_info
      writing src/PyAudio.egg-info/PKG-INFO
      writing top-level names to src/PyAudio.egg-info/top_level.txt
      writing dependency_links to src/PyAudio.egg-info/dependency_links.txt
      reading manifest file 'src/PyAudio.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      writing manifest file 'src/PyAudio.egg-info/SOURCES.txt'
      installing library code to build/bdist.linux-x86_64/egg
      running install_lib
      running build_py
      creating build
      creating build/lib.linux-x86_64-2.7
      copying src/pyaudio.py -> build/lib.linux-x86_64-2.7
      running build_ext
      building '_portaudio' extension
      creating build/temp.linux-x86_64-2.7
      creating build/temp.linux-x86_64-2.7/src
      x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c src/_portaudiomodule.c -o build/temp.linux-x86_64-2.7/src/_portaudiomodule.o
      x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/src/_portaudiomodule.o -lportaudio -o build/lib.linux-x86_64-2.7/_portaudio.so
      creating build/bdist.linux-x86_64
      creating build/bdist.linux-x86_64/egg
      copying build/lib.linux-x86_64-2.7/_portaudio.so -> build/bdist.linux-x86_64/egg
      copying build/lib.linux-x86_64-2.7/pyaudio.py -> build/bdist.linux-x86_64/egg
      byte-compiling build/bdist.linux-x86_64/egg/pyaudio.py to pyaudio.pyc
      creating stub loader for _portaudio.so
      byte-compiling build/bdist.linux-x86_64/egg/_portaudio.py to _portaudio.pyc
      creating build/bdist.linux-x86_64/egg/EGG-INFO
      copying src/PyAudio.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
      copying src/PyAudio.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
      copying src/PyAudio.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
      copying src/PyAudio.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
      writing build/bdist.linux-x86_64/egg/EGG-INFO/native_libs.txt
      zip_safe flag not set; analyzing archive contents...
      creating dist
      creating 'dist/PyAudio-0.2.11-py2.7-linux-x86_64.egg' and adding 'build/bdist.linux-x86_64/egg' to it
      removing 'build/bdist.linux-x86_64/egg' (and everything under it)
      Processing PyAudio-0.2.11-py2.7-linux-x86_64.egg
      Copying PyAudio-0.2.11-py2.7-linux-x86_64.egg to /usr/local/lib/python2.7/dist-packages
      Adding PyAudio 0.2.11 to easy-install.pth file
      
      Installed /usr/local/lib/python2.7/dist-packages/PyAudio-0.2.11-py2.7-linux-x86_64.egg
      Processing dependencies for PyAudio==0.2.11
      Finished processing dependencies for PyAudio==0.2.11
      

      【讨论】:

      • 如何使用 pipenv 安装?
      【解决方案6】:

      只需使用 --upgrade 标志安装。这可能是由于旧版 PyAudio 的依赖项不受支持。

      pip install --upgrade pyaudio
      

      这个工人对我来说

      $ lsb_release -a
      No LSB modules are available.
      Distributor ID: Ubuntu
      Description:    Ubuntu 20.04.1 LTS
      Release:    20.04
      Codename:   focal
      

      【讨论】:

        【解决方案7】:

        我也有类似的问题,,,只需升级你的 gcc 即

        sudo apt-get update gcc
        

        先安装#include<portaudio>

        【讨论】:

          【解决方案8】:

          尝试以下任何一种:

          点安装 PyAudio

          pip3 安装 PyAudio

          python -m pip install PyAudio

          python -m pip3 安装 PyAudio

          【讨论】:

            猜你喜欢
            • 2018-04-10
            • 1970-01-01
            • 1970-01-01
            • 2018-09-04
            • 2023-04-10
            • 2018-06-09
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多