2010-10-17 2 views
1

Мой TRACEBACK выглядит следующим образом:Невозможно импортировать pyglet.media.avbin

C:\Romeo\Scripts>python 
Python 2.7 (r27:82525, Jul 4 2010, 09:01:59) [MSC v.1500 32 bit (Intel)] on win 
32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import pyglet.media.avbin 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Romeo\lib\site-packages\pyglet\media\avbin.py", line 53, in <module> 
    darwin='/usr/local/lib/libavbin.dylib') 
    File "C:\Romeo\lib\site-packages\pyglet\lib.py", line 122, in load_library 
    raise ImportError('Library "%s" not found.' % names[0]) 
ImportError: Library "avbin" not found. 

Я бегу Windows 7 32-бит с Отключен DEP и avbin.dll в system32. Любые предложения очень ценятся!

ответ

5

Это было обсуждено в списке рассылки пиглетов в какой-то момент, как я обнаружил, но в случае, если другие люди ищут здесь ответ, поместите файл avbin.dll в папку syswow64 в версиях Windows 64. Непонятно, почему это должно быть местом, когда вам нужно использовать пиглет, вам нужно использовать 32-битный питон и 32-разрядный avbin.dll, если вы его не скомпилируете или не воспользуетесь одним из тех, что Christoph Gohlke любезно компилирует на своем сайте: http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyglet. Но это всего лишь еще одна часть алхимии окон, которую нам не дали знать, я думаю.

3

Считается, что неправильная практика заключается в том, чтобы скопировать ваши DLL-файлы в system32, что в стороне попробуйте скопировать его на <your_python_home>\DLLs, предположительно C:\Python27\DLLs. Вы также можете попробовать C:\Python27\Lib\site-packages.

Не приходит эта библиотека с «надлежащим» способом установки, заботясь об этом, например. что-то вроде python setup.py install?

+1

Да, это считается плохой практикой, но он просто следовал указаниям документации/сайта пиглета. – snapshoe

0

Я запускаю 32-разрядный python 2.6 на windows 7 (64 бит), и у меня такая же проблема. Ответ от knitti тоже не помог мне. Единственное, что работало, это копирование файла avbin.dll в каталог, где находится мой .py-файл.

+0

действительно? Я нахожусь на python2.7 на 64-битной win7 и используя последний источник pyglet от github. Помещение AVbin10 32-битного двоичного файла в один из трех (такая же папка, как файл py или C: \ Python27 \ DLL или C:/Windows/system) работала для меня. – otterb

+0

Системные переменные пути. – Jeff