2014-06-06 1 views
2

파이썬 3.4 (32 비트)가 설치되어 있고 그 위에 python-libtorrent-0.16.16.win32.msi를 설치했습니다.libtorrent-rasterbar 용 파이썬 바인딩이 파이썬 3에서 작동합니까?

내 테스트 코드 : ImportError : DLL로드 실패 : % 1은 (는) 유효한 Win32 응용 프로그램이 아닙니다.

내 Google 결과는 이것이 Python 2.7에서 잘 작동한다고 제안합니다. 그게 해결책인가요? 파이썬을 다운 그레이드해야합니까?

+1

A [데비안 패키지]가 존재 (https://packages.debian.org/jessie/python3-libtorrent) 및 [풀 요청 (https://packages.debian.org/jessie/ python3-libtorrent)를 사용하면 원하는대로 할 수 있으므로 이론적으로 가능해야합니다. 그러나 이것이 반드시 Windows에서 쉽다는 것을 의미하지는 않습니다. 그러나 Pythons 2와 Python 3이 공존하기는 쉽습니다. Python 2와 Python 3를 나란히 설치해야하기 때문에 다운 그레이드가 아닙니다. – ikdc

+1

바이너리는 파이썬 2.7에 대해 빌드됩니다. 스스로 구축한다면, 파이썬 3에서 작동 할 가능성이 가장 높습니다. – Arvid

+0

아래 답변에도 불구하고 데비안 패키지 인'python3-libtorrent'의 바인딩은 정상적으로 동작합니다. 그들에게 한번 해보십시오. – amoe

답변

2

아니오. Libtorrent는 Python 3을 지원하지 않습니다.

Python 3 utf8 처리 차이로 인해 컴파일되지만 작동하지 않습니다. 이 잠시 작동하도록 실패 노력이 있었다 다시 https://code.google.com/p/libtorrent/issues/detail?id=449

현재 트렁크도 우분투 python3-이 어떤 이유로 무효 파이썬 3 즉 http://sourceforge.net/p/libtorrent/code/HEAD/tree/trunk/bindings/python/setup.py 라인 70> '인쇄있는 CmdLine'

을 포함 사람들을 혼란스럽게하는 libtorrent 패키지이지만, 확실히 작동하지 않으며 수동 컴파일도하지 않습니다.

steps: 
apt-get build-dep libtorrent-rasterbar 
export 'PYTHON_VERSION=3.4'; export 'PYTHON=/usr/bin/python3.34' 
./configure LDFLAGS="-L/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu/" --enable-python-binding --enable-geoip=no 
--with-boost-python=boost_python-py34 
ldconfig 

>> python 
import libtorrent 
ses = libtorrent.session() 
ses.save_state() 

"UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa2 in position 0: invalid start byte" 
+3

에서 찾을 수있는 자세한 방법은 _ 빌드 방법 _ 사람들을 혼란스럽게 만드는 우분투 python3-libtorrent 패키지가 있습니다. 그러나 확실히 작동하지 않습니다. 수작업으로 편집합니다 ._ 전형적인 opensource가 얼마나 좋은지. –

+5

저는 Python 3과 함께 libtorrent를 사용했습니다. 따라서 여러분은 아마도 사람들이 그 문제를 접할 수 있도록 현재 상태를 반영하여 답변을 업데이트해야합니다. 문제가 해결되었습니다. – SwarmIntelligence