Ошибки установки pybluez в Mac OS

Я попытался установить pybluez, используя следующие команды.

pip install pybluez sudo easy_install pybluez 

Но для обеих команд я получаю ошибки.

Окружающая среда:

 Mac OSX 10.9.1 Python 2.7 

Журналы пива:

 cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -arch i386 -pipe -I/System/Library/Frameworks/IOBluetooth.framework/Headers -I/System/Library/Frameworks/CoreFoundation.framework/Headers -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c osx/_osxbt.c -o build/temp.macosx-10.9-intel-2.7/osx/_osxbt.o clang: warning: argument unused during compilation: '-mno-fused-madd' osx/_osxbt.c:676:5: error: unknown type name 'IOBluetoothDeviceInquiryRef'; did you mean 'IOBluetoothDeviceRef'? IOBluetoothDeviceInquiryRef inquiry; ^~~~~~~~~~~~~~~~~~~~~~~~~~~ IOBluetoothDeviceRef /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/IOBluetooth.framework/Headers/IOBluetoothUserLib.h:34:47: note: 'IOBluetoothDeviceRef' declared here typedef struct OpaqueIOBluetoothObjectRef * IOBluetoothDeviceRef; ^ osx/_osxbt.c:688:17: error: unknown type name 'IOBluetoothDeviceInquiryRef'; did you mean 'IOBluetoothDeviceRef'? IOBluetoothDeviceInquiryRef inquiryRef, ^~~~~~~~~~~~~~~~~~~~~~~~~~~ IOBluetoothDeviceRef /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/IOBluetooth.framework/Headers/IOBluetoothUserLib.h:34:47: note: 'IOBluetoothDeviceRef' declared here typedef struct OpaqueIOBluetoothObjectRef * IOBluetoothDeviceRef; ^ osx/_osxbt.c:703:19: warning: implicit declaration of function 'IOBluetoothDeviceInquiryCreateWithCallbackRefCon' is invalid in C99 [-Wimplicit-function-declaration] dd->inquiry = IOBluetoothDeviceInquiryCreateWithCallbackRefCon (&dd); ^ osx/_osxbt.c:703:17: warning: incompatible integer to pointer conversion assigning to 'IOBluetoothDeviceRef' (aka 'struct OpaqueIOBluetoothObjectRef *') from 'int' [-Wint-conversion] dd->inquiry = IOBluetoothDeviceInquiryCreateWithCallbackRefCon (&dd); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osx/_osxbt.c:705:5: warning: implicit declaration of function 'IOBluetoothDeviceInquirySetCompleteCallback' is invalid in C99 [-Wimplicit-function-declaration] IOBluetoothDeviceInquirySetCompleteCallback (dd->inquiry, ^ osx/_osxbt.c:717:5: warning: implicit declaration of function 'IOBluetoothDeviceInquiryStart' is invalid in C99 [-Wimplicit-function-declaration] IOBluetoothDeviceInquiryStart (dd->inquiry); ^ osx/_osxbt.c:721:5: warning: implicit declaration of function 'IOBluetoothDeviceInquiryDelete' is invalid in C99 [-Wimplicit-function-declaration] IOBluetoothDeviceInquiryDelete (dd->inquiry); ^ 5 warnings and 2 errors generated. error: command 'cc' failed with exit status 1 ---------------------------------------- Cleaning up... Removing temporary dir /private/var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip_build_~... Command /usr/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip_build_~/pybluez/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip-j1ASQD-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip_build_~/pybluez Exception information: Traceback (most recent call last): File "/Library/Python/2.7/site-packages/pip-1.5.2-py2.7.egg/pip/basecommand.py", line 122, in main status = self.run(options, args) File "/Library/Python/2.7/site-packages/pip-1.5.2-py2.7.egg/pip/commands/install.py", line 279, in run requirement_set.install(install_options, global_options, root=options.root_path) File "/Library/Python/2.7/site-packages/pip-1.5.2-py2.7.egg/pip/req.py", line 1380, in install requirement.install(install_options, global_options, *args, **kwargs) File "/Library/Python/2.7/site-packages/pip-1.5.2-py2.7.egg/pip/req.py", line 699, in install cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False) File "/Library/Python/2.7/site-packages/pip-1.5.2-py2.7.egg/pip/util.py", line 697, in call_subprocess % (command_desc, proc.returncode, cwd)) InstallationError: Command /usr/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip_build_~/pybluez/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip-j1ASQD-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/var/folders/f0/ldyq8xbx0fvckg001kk64j7r0000gn/T/pip_build_~/pybluez **easy_install Logs** Reading http://pypi.python.org/simple/pybluez/ Best match: PyBluez 0.20 Downloading https://pypi.python.org/packages/source/P/PyBluez/PyBluez-0.20.zip#md5=79fad332df63b67a5f9a8d25042fb2a8 Processing PyBluez-0.20.zip Running PyBluez-0.20/setup.py -q bdist_egg --dist-dir /tmp/easy_install-Y5Y9H1/PyBluez-0.20/egg-dist-tmp-kwjDlw clang: warning: argument unused during compilation: '-mno-fused-madd' **osx/_osxbt.c:676:5: error: unknown type name 'IOBluetoothDeviceInquiryRef'; did you mean 'IOBluetoothDeviceRef'?** IOBluetoothDeviceInquiryRef inquiry; ^~~~~~~~~~~~~~~~~~~~~~~~~~~ IOBluetoothDeviceRef **/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/IOBluetooth.framework/Headers/IOBluetoothUserLib.h:34:47: note:** 'IOBluetoothDeviceRef' declared here typedef struct OpaqueIOBluetoothObjectRef * IOBluetoothDeviceRef; ^ **osx/_osxbt.c:688:17: error: unknown type name 'IOBluetoothDeviceInquiryRef'; did you mean 'IOBluetoothDeviceRef'?** IOBluetoothDeviceInquiryRef inquiryRef, ^~~~~~~~~~~~~~~~~~~~~~~~~~~ IOBluetoothDeviceRef **/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/IOBluetooth.framework/Headers/IOBluetoothUserLib.h:34:47: note:** 'IOBluetoothDeviceRef' declared here typedef struct OpaqueIOBluetoothObjectRef * IOBluetoothDeviceRef; ^ **osx/_osxbt.c:703:19: warning: implicit declaration of function 'IOBluetoothDeviceInquiryCreateWithCallbackRefCon' is invalid in C99 [-Wimplicit-function-declaration]** dd->inquiry = IOBluetoothDeviceInquiryCreateWithCallbackRefCon (&dd); ^ **osx/_osxbt.c:703:17: warning: incompatible integer to pointer conversion assigning to 'IOBluetoothDeviceRef' (aka 'struct OpaqueIOBluetoothObjectRef *') from 'int' [-Wint-conversion]** dd->inquiry = IOBluetoothDeviceInquiryCreateWithCallbackRefCon (&dd); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ **osx/_osxbt.c:705:5: warning: implicit declaration of function 'IOBluetoothDeviceInquirySetCompleteCallback' is invalid in C99 [-Wimplicit-function-declaration]** IOBluetoothDeviceInquirySetCompleteCallback (dd->inquiry, ^ **osx/_osxbt.c:717:5: warning: implicit declaration of function 'IOBluetoothDeviceInquiryStart' is invalid in C99 [-Wimplicit-function-declaration]** IOBluetoothDeviceInquiryStart (dd->inquiry); ^ **osx/_osxbt.c:721:5: warning: implicit declaration of function 'IOBluetoothDeviceInquiryDelete' is invalid in C99 [-Wimplicit-function-declaration]** IOBluetoothDeviceInquiryDelete (dd->inquiry); ^ 5 warnings and 2 errors generated. error: Setup script exited with error: command 'cc' failed with exit status 1 

Любой, кто может установить pybluez на Mavericks ?

На Mountain Lion также те же ошибки установки.

Редактировать :

Заменил IOBluetoothDeviceInquiryRef с помощью IOBluetoothDeviceRef и избавился от ошибок. и возможность установки на Mac из-за предупреждений.

Установлен с помощью sudo python setup.py install

Вот результат

running install running build running build_py running build_ext running install_lib running install_egg_info Удаление /Library/Python/2.7/site-packages/PyBluez-0.20-py2.7.egg-info Запись /Library/Python/2.7/site-packages/PyBluez-0.20 -py2.7.egg-инфо

Когда я попытался импортировать bluetooth, я получил исключение

Вот результат

>>> import bluetooth Traceback (последний последний звонок): Файл «", строка 1, в файле «bluetooth / __ init__.py», строка 47, из импорта osx * Файл «bluetooth / osx.py», строка 3, в повышении NotImplementedError NotImplementedError

Промежуточная ссылка, упомянутая об ошибке

открытие python bluetooth с pybluez

Что нужно сделать, чтобы установить pybluez на Mac

    One Solution collect form web for “Ошибки установки pybluez в Mac OS”

    PyBluez предназначен только для ПК. Попробуйте lightblue

    Загрузите и установите главный дистрибутив: https://github.com/postskolkovo/lightblue-0.4

     cd ~/Downloads/lightblue-0.4-master sudo python setup.py install 

    Если вы получите сообщение об ошибке:

     Check dependencies No architectures to compile for (ARCHS=$(NATIVE_ARCH_ACTUAL), VALID_ARCHS=i386 x86_64). ** INSTALL FAILED ** 

    вам придется открыть setup.py и изменить:

     os.system("xcodebuild install -arch '$(NATIVE_ARCH_ACTUAL)' -target LightAquaBlue -configuration Release DSTROOT=/ INSTALL_PATH=/Library/Frameworks DEPLOYMENT_LOCATION=YES") 

    чтобы:

     os.system("xcodebuild install -arch 'i386' -target LightAquaBlue -configuration Release DSTROOT=/ INSTALL_PATH=/Library/Frameworks DEPLOYMENT_LOCATION=YES") 

    через это обсуждение

    Python - лучший язык программирования в мире.