Macbook、OS X 10.6.4 で実行しています。libusb 1.x の最新バージョンと libusb-compat をインストールしました。libusb のサンプル アプリケーションはコンパイルして実行されますが、問題はないので、正しくインストールされていると想定しています。libftdi も正しくインストールされているように見えますが、libusb に問題があるようです。サンプル アプリの 1 つを試したところ、次のエラー メッセージが表示されました。
$ ./simple
dyld: lazy symbol binding failed: Symbol not found: _usb_init
Referenced from: /Users/Me/Downloads/libftdi-0.19/src/.libs/libftdi.1.dylib
Expected in: flat namespace
dyld: Symbol not found: _usb_init
Referenced from: /Users/Me/Downloads/libftdi-0.19/src/.libs/libftdi.1.dylib
Expected in: flat namespace
Trace/BPT trap
libusb が原因であるという仮定は、_usb_init が libusb 関数であるためです。同じ行に沿った投稿をここで見つけましたhttp://www.jedi.be/blog/2009/11/11/ruby-usb-libusb/しかし、ルビーのために。
Pylibftdi で物事を進めようとすると、
Traceback (most recent call last):
File "blah/list_devices.py", line 4, in <module>
for device in Driver().list_devices():
File "/Library/Python/2.6/site-packages/pylibftdi/driver.py", line 61, in __init__
fdll = CDLL(ftdi_lib)
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/ctypes/__init__.py", line 345, in __init__
self._handle = _dlopen(self._name, mode)
OSError: dlopen(/usr/local/lib/libftdi.dylib, 6): Symbol not found: _usb_bulk_read
Referenced from: /usr/local/lib/libftdi.dylib
Expected in: flat namespace
in /usr/local/lib/libftdi.dylib
Pyftdiを使用して何かを実行するには、デフォルトとしてx86_64ではなくi386にlibftdiをインストールする必要があったことに注意してください(マッチョエラーが発生します)-ただし、libftdiを「通常」インストールしても上記のOSErrorsが発生します。どんな提案でも大歓迎です。