Я пытаюсь добавить libtorrent к моему Python.Моя проблема в том, что, хотя я попробовал много, хотя и странных, обходных путей ( об этом позже ), чтобы заставить libtorrent работать с моим Python, я не могу на всю жизнь импортировать модуль.
Я пойду через то, что я пробовал.Я наткнулся на «решения», которые помогли мне частично, но не до конца.Я даже пытался следовать инструкциям самого создателя, приведенным в Переполнение стека .
Давайте сделаем несколько шагов назад и посмотрим, что я пытался сделать.Мы начнем с повышения.Если вы не знали, libtorrent требует повышения, чтобы функционировать.Мои знания не велики, когда речь идет о повышении, поэтому я опущу объяснение этого.Итак, как и в случае с всеми инструкциями, которые я следовал, говорилось, что требуется повышениеЯ быстро установил boost и добавил его путь к таблице окружения.Впоследствии я запустил файл bat, предоставленный в boost, и он создал два файла ( возможно больше ) B2.exe и BJAM . B2 - это то, что мне нужно было использовать для следующих шагов.
Я продолжил, перейдя в загруженную папку Boost (версия 1.66)> tools> build> example и затем отредактировав user-Файл config.jam с добавлением следующих элементов:
с использованием msvc: 14.0;
с использованием gcc::: -std = c ++ 11;
с использованием python: 3.6: C: \ Users \ XXXX \ AppData \ Local \ Programs \ Python \ Python36-32: C: \ Users \ XXXX \ AppData \ Local \ Programs \ Python \ Python36-32 \ include: C: \ Users \ XXXX \ AppData \ Local \Программы \ Python \ Python36-32 \ libs;
Затем я продолжил, открыв командную строку для собственного инструмента с повышенными правами x64 для VS2017 и выполнив следующую команду
b2.exe --hash openssl-version = pre1.1 link = shared libtorrent-link = shared stage_module stage_dependencies
, также предоставленный Arvid (я считаю, создателем), в папке libtorrent> bindings> python Это начало 5-минутного периода загрузки.Он дал мне следующую информацию:
Performing configuration checks
- 32-bit : yes (cached)
- arm : no (cached)
- mips1 : no (cached)
- power : no (cached)
- sparc : no (cached)
- x86 : yes (cached)
- symlinks supported : yes (cached)
...patience...
...patience...
...patience...
...found 7252 targets...
...updating 27 targets...
, заканчивающийся сообщением, что это
...updated 27 targets...
Инструкции в основном на этом заканчиваются, так что вы можете подумать, что теперь они правильно настроены. Это не было .Я сразу же перешел в папку bindings> python и, конечно же, там есть файлы libtorrent.pyd и libtorrent.lib.Выглядело многообещающе.Я загрузил командную строку, проверил Pip (список пипсов) и увидел libtorrent в списке.Зашел в python и попытался импортировать libtorrent.
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 16:07:46) [MSC v.1900 32 bit
(Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import libtorrent
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: The specified module could not be found.
Файл pyd существует, поэтому я попытался перетащить его в папку DLL Python, но все равно не смог его импортировать.Я даже зашел так далеко, чтобы сделать руководство
sys.path.append('D:\Downloads\libtorrent-rasterbar-1.1.7\libtorrent-
rasterbar-1.1.7\bindings\python')
, которое некоторые люди предложили сделать, потому что оно может быть не связано.
Я в растерянности.
Iне может импортировать его, но он явно существует не только в списке пипсов, но и в папке libtorrent> bindings> python (файлы pyd и lib).
Я также попытался запустить файл setup.py.Что делает то же самое, но не дает мне дальнейшего.
Я сделал замечание: папка в папке libtorrent> bindings> python> bin имеет странное имя: "d796976f6d11336977dac24301151009 ", содержащий папку src, libtorrent.exp, libtorrent.lib, libtorrent.pdb, libtorrent.pyd, libtorrent.pyd.manifest и libtorrent.pyd.rsp
Мне кажется, что установка или загрузка былане полностью завершен.Однако это может быть не так, это всего лишь необразованное предположение.Кроме того, файл libtorrent.lib, находящийся в папке libtorrent> bindings> python & и файл libtorrent.pyd, имеет размер 2 КБ и 3000 КБ соответственно
Может ли он быть поврежден?Разве я не связал это правильно?
Я использую 32-битный Python 3.6.5 (64-битный также существует, но по некоторым причинам не будет работать вообще с libtorrent). 64-битная система на базе Windows с установленной Windows 10. Повышение 1.66.0. Попытка загрузить / установить / импортировать libtorrent-rasterbar-1.1.7