【问题标题】:Downloading and installing PyBluez for a 64-bit Windows 10 PC?为 64 位 Windows 10 PC 下载和安装 PyBluez?
【发布时间】:2018-02-16 07:24:36
【问题描述】:

我正在尝试将蓝牙与 python 一起使用,我遇到了一个模块 - pybluez。那时,我尝试通过运行 pip install pybluez 来安装它。找到并下载了包,但是运行python setup.py egg_info时报错。

然后我尝试从此链接https://pypi.python.org/pypi/PyBluez 下载 pyBluez 但是,它说我PC上安装的Python版本不是2.7(我有2.7.10;我需要2.7.0吗?)另外,这个下载链接是针对32位系统的,这可能是原因它不在我的身上运行。

所以我问: 1. 如何解决这个错误?

当我尝试使用 pip 安装 pybluez 时输出错误:

2.使用https://pypi.python.org/pypi/PyBluez下载是否需要python 2.7.0和32位系统?如果是这样,有人可以为 64 位系统提出更好的方法吗? 3.还有其他可以替代的蓝牙模块吗?

【问题讨论】:

    标签: bluetooth


    【解决方案1】:

    我已经成功用python3.6为win10x64构建了pybluez

    快乐的蓝牙

    【讨论】:

    • 折腾了几天,终于找到了解决问题的解决方案。非常感谢!!!
    • @GeertVc 为什么不提供解决方案的链接?
    • @Nazar: 解决方案就在最上面,就这么简单……看看 Tomasz 他的回答。
    • 这值得更多的支持,在 Python 3.7.3 中的 win 10 中对我来说效果很好。
    • 我很高兴听到这个:)
    【解决方案2】:

    这是一个“扩展解决方案”,补充了其他已发布的答案。

    Linux 上基本上在任何情况下都支持蓝牙。 Python 3 内置 套接字对象甚至可以在蓝牙上工作。但是对于 Windows,有一些障碍需要跳过。对此的标准解决方案是使用 PyBluez。如果你真的很幸运,你也许可以只使用pip install PyBluez-win10 进行安装。但是,如果失败,则可以通过预编译的“轮子”进行安装。

    但是,给定的轮子仅适用于您的特定上下文,即确切的 Python 版本。所以,为了未来的证明,如果你需要 PyBluez,你应该知道如何为自己从源头创建一个轮子。如果您还没有所需的所有软件并且不熟悉该过程的某些部分,那么这是一个漫长而烦人的过程,例如使用蟒蛇。所以,如果你在一个团队中工作,我建议让一个人在这方面花时间,然后与所有人分享轮子(希望他们使用相同版本的 Python!)。

    以下是此处发布内容的释义版本:https://github.com/pybluez/pybluez/issues/180,其中包括实际开发人员的 cmets 和方法。

    1. 下载并运行“Visual Studio Build Tools”安装程序:

      有关与目标 Python 版本匹配的确切编译器和链接的官方列表,请参阅:https://wiki.python.org/moin/WindowsCompilers

      这是 2019 Build Tools 链接,适用于 Py3.7:

      https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019

    2. 在安装过程中,您必须选择BOTH“Visual C++ 构建工具”和“通用 Windows 平台构建工具”。在其中保留默认选项(例如,包括 Windows 10 SDK)。

      注意:这需要 15GB 的磁盘空间,并且需要一些耐心!

    3. 安装“Miniconda”:

      https://docs.conda.io/en/latest/miniconda.html

      选择与目标 Python 版本的位集(32 对 64)匹配的那个 您希望将 PyBluez 安装到其中。

    4. 将 PyBluez 源代码库克隆到临时位置(例如您的桌面)。然后,启动终端并切换到该目录:

    git clone https://github.com/pybluez/pybluez
    cd pybluez
    
    1. 如果您没有将 conda 放在系统路径上(因为安装程序建议不要这样做),您可以按照此示例命令将它添加到此本地 CMD 会话:
    set CONDA_DIR=%USERPROFILE%\Miniconda3    
    set PATH=%CONDA_DIR%\condabin;%PATH%
    
    1. 创建一个专用环境来使用所需的 Python 版本构建 pybluez。然后,启动它。下面的示例使用 Python 3.7,但相同的步骤也适用于其他版本(包括 Py 2.x 等)
    conda create -y -n pybluez python==3.7
    activate pybluez
    
    1. 构建 wheel 文件。然后,离开专用环境。
    python setup.py install
    python setup.py bdist_wheel   
    deactivate
    
    1. 将滚轮复制到您的桌面。从那里,您可以随心所欲地使用它。然后,删除 pybluez conda 环境和源代码库(因为您不再需要其中任何一个)。
    copy .\dist\*.whl "%USERPROFILE%\Desktop"
    cd..
    rd /s /q "%CONDA_DIR%\envs\pybluez"
    rd /s /q pybluez
    
    1. 最后,您可以将 wheel 安装到目标 Python 实例和/或存储/共享它:

      这些文件的名称和路径会有所不同,因此请先为您的用例定义这些文件

    set PYBLUEZ_WHEEL=%USERPROFILE%\Desktop\PyBluez-0.22-cp37-cp37m-win_amd64.whl
    set PYTHON_PATH=python
    

    安装轮子:

    %PYTHON_PATH% -m pip install "%PYBLUEZ_WHEEL%"
    

    确认安装:

    %PYTHON_PATH% -c "import bluetooth; print(bluetooth.__version__)"
    

    【讨论】:

      【解决方案3】:

      我从here 下载了一个 Python 3.6 轮子(python 2.7、3.5、3.6、3.7 的轮子也可用)。

      我通过

      将它安装在我的虚拟环境中
      pip install PyBluez-0.22-cp36-cp36m-win_amd64.whl
      

      【讨论】:

      猜你喜欢
      • 2019-05-09
      • 2018-08-26
      • 2015-11-05
      • 2012-09-10
      • 2016-08-11
      • 1970-01-01
      • 2017-04-07
      • 2018-11-23
      • 2011-07-06
      相关资源
      最近更新 更多