在Windows 7上安装适用于Python 3.6的libtorrent

时间:2017-04-18 17:39:47

标签: python libtorrent

Windows 7 x64 - Python 3.6

我正在尝试使用说明here在Windows中安装libtorrent Python库。

导航到setup.py文件后,我使用了以下命令

python setup.py build
python setup.py install

在cmd窗口中,我收到以下消息:

C:\Users\thomas\Desktop\libtorrent-master>python setup.py build
running build

C:\Users\thomas\Desktop\libtorrent-master>python setup.py install
running install
running build
running install_egg_info
Removing C:\Users\thomas\AppData\Local\Programs\Python\Python36-32\Lib\site-pac
kages\python_libtorrent-1.2.0-py3.6.egg-info
Writing C:\Users\thomas\AppData\Local\Programs\Python\Python36-32\Lib\site-pack
ages\python_libtorrent-1.2.0-py3.6.egg-info

我还需要做什么?因为尝试导入libtorrent库,解释器会提供以下消息:

>>> import libtorrent
Traceback (most recent call last):
File , line 1, in
ModuleNotFoundError: No module named 'libtorrent'

无论如何,Python文件夹中没有合适的DLL,因此我无法导入库。

使用Sourceforge链接中的MSI安装程序并不会有任何帮助,因为它已经过时了。

1 个答案:

答案 0 :(得分:0)

如果您快速查看了您尝试安装的setup.py文件,则会see假设您已安装boost C++ libraries以生成{{1} Python需要的。你会期望得到一个错误,但现在的情况并非如此。

为Python安装libtorrent.pyd而不构建它

为了您自己的方便,我构建了libtorrent的Python Wheels,它可以与libtorrent一起安装。请注意,如果它不起作用,则意味着您必须为自己的机器构建自己的pip install

在Windows 7上为Python构建和安装.pyd

为了让libtorrent正常工作,您首先必须下载并安装:

  1. Windows 7 SDK and .NET Framework 4

  2. Microsoft Visual C++ 2015 Build Tools

  3. 安装完成后,您必须将其目录添加到boost

    1. 右键点击PATH并转到Computer

      Right-Click <code>Computer</code> and go to <code>Properties</code>

    2. 点击左侧的Properties

      Advanced System Settings

    3. 点击右下方的Advanced System Settings

      Environment Variables

    4. 从顶部列表中选择Environment Variables,然后点击PATH

      PATH

    5. 如果您要构建,请在弹出的框内添加这些内容 对于32位Python:

      Edit...

      或者这些是64位:

      ;C:\Program Files\Microsoft SDKs\Windows\v7.1\Include;C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib\;C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\
      
    6. 点击弹出窗口和;C:\Program Files\Microsoft SDKs\Windows\v7.1\Include;C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib\x64;C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\x64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\ 中的OK 窗口,并打开另一个,我们稍后将需要它..

    7. 现在一切都已设置完毕,您已准备好安装boost C++ libraries。由于Environment Variables的Python绑定有一些issues,其促销版本高于libtorrent(2017年8月),因此请务必下载this one。 下载后:

      1. 提取

      2. 在解压缩的目录中打开1.63Command Prompt

      3. 运行cd以安装库

      4. 完成此操作后,转到之前打开的bootstrap.bat窗口,然后再次点击System Properties。 点击Environment Variables并添加以下内容:

        New...

        再次点击Variable name: BOOST_ROOT Variable value: "<full path to extracted directory of boost>" 到两个窗口。

        在实际开始构建OK之前还有最后一步,那就是将Python版本指定为配置文件。

        1. 打开 libtorrent

        2. 执行 Command Prompt

          例如: echo using python : <Python Version> : "<Python Path>" : "<Python Path>\Include" : "<Python Path>\libs" ; >> user-config.jam

        3. 现在构建echo using python : 3.5 : "C:\Program Files\Python35" : "C:\Program Files\Python35\Include" : "C:\Program Files\Python35\libs" ; >> user-config.jam

          1. Download 并提取repository

          2. 在记事本中打开libtorrent,找到以<libtorrent extracted directory>\include\libtorrent\session.hpp开头的行,删除std::snprintf并保存。

          3. std::Command Promptcd

          4. 现在

            如果您正在构建32位Python执行:

            <libtorrent extracted directory>\bindings\python

            bjam libtorrent-link=static boost-link=static stage_module表示64位

          5. 请耐心等待,一旦完成,您将获得bjam libtorrent-link=static boost-link=static address-model=64 stage_modulelibtorrent.pyd,你可以 在Python中导入!