- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Bluez的编译过程与方法研讨
Bluez的编译过程与方法 2011-05-19 蓝牙模块解决方案 linux下针对蓝牙设备的操作分两部分,分别是驱动程序的部分和用户程序的部分,而用户程序部分又可分为守护进程部分和用户编程部分。 蓝牙设备基于通用蓝牙芯片,驱动程序在内核里已经集成,即大多数蓝牙设备的驱动程序会在内核源代码中找到,因此,不需要针对蓝牙设备编写具体的驱动程序。 蓝牙模块解决方案 大致需要完成如下: 1、linux内核的配置,完成蓝牙设备驱动的配置 2、编译bluez协议栈 3、编写用户进程通信程序 蓝牙设备间配对原理 两个蓝牙设备A和B,A先发送要求配对的请求给B,B由用户设置好配对的密码即PIN code,然后回一个消息给A,说你想配对可以呀,知道我的密码吗?然后A就发送PIN code过去,B看和自己的密码相符合,就发送一个replyOK的消息给A,这样两者就建立起来了信任关系 Bluez介绍 Linux OS开放的bluetooth 协议栈主要包括IBM公司的BlueDrekar, Nokia公司的Affix, Axis公司的OpenBT和官方的协议栈BlueZ.Bluetooth协议栈BlueZ分为两部分:内核代码和用户态程序及工具集。其中内核代码由BlueZ核心协议和驱动程序组成;Bluetooth协议实现在内核源代码 /net/bluetooth中。包括hci,l2cap,hid,rfcomm,sco,SDP,BNEP等协议的实现。驱动程序放在 /driver/bluetooth中,包含Linux kernel对各种接口的Bluetooth device的驱动。例如:USB接口,串口等。用户态程序及工具集包括应用程序接口和BlueZ工具集。BlueZ提供函数库以及应用程序接口,便于程序员开发bluetooth应用程序。BlueZ utils是主要工具集,实现对bluetooth设备的初始化和控制。 Bluez介绍 bluez新的版本不像旧的那样有什么bluez-util、bluez-lib什么的,就一个bluez4.48。 编译方案选择与说明 一、 bluez-lib+bluez-utils+expat方案 bluez-lib-3.36.tar.gz expat-2.0.1.tar.gz dbus-1.2.16.tar.gz glib-2.22.4.tar.bz2 bluez-utils-3.36.tar.gz 编译方案选择与说明 二、 bluez-lib+bluez-utils+libxml方案 bluez-lib-3.36.tar.gz libxml2-2.7.4.tar.gz dbus-1.0.2.tar.gz glib-2.16.5.tar.bz2 bluez-utils-3.36.tar.gz 编译方案选择与说明 三、bluez-4.x + libxml方案 libxml2-2.6.31.tar.gzdbus-1.0.2.tar.gzglib-2.22.3.tar.bz2bluez-4.48.tar.gz 编译方案选择与说明 四、bluez-4.x + expat方案 expat-2.0.1.tar.gzdbus-1.0.3.tar.gzglib-2.22.0.tar.bz2bluez-4.48.tar.gz 编译前说明及注意事项 1、四种方案均可,所选库根据编译器及库之间的兼容性而定,库版本并不唯一 2、所选各库版本尽量偏低,避免带来意想不到的错误,导致无法编译通过 3、dbus库可依赖expat或libxml,默认是expat,建议用expat 4、glib库版本过高,可能会用到zlib库 5、bluez-4.x以上版本,编译时需要用到linux内核中的/include/linux/sockios.h 所用的库及下载网站 expat-2.0.1.tar.gz /expat dbus-1.0.3.tar.gz /releases/dbus/ glib-2.22.0.tar.bz2 /pub/glib bluez-4.48.tar.gz /pub/linux/bluetooth/ 库之间的依赖关系 dbus依赖 expat bluez依赖 glib、dbus 说明: 1、如果glib库的版本比较高,可能还需要zlib 2、这里bluez-4.48,相当于以前低版本的bluez-lib、bluez-utils 3、dbus依赖expat或者libxml,这里用expat 编译前的目录位置说明 1、指定安装位置 /home/hdl/autobuild/hdl/Bluetooth/lib 2、Linux-2.6.28内核之include /home/hdl/autobuild/hdl/te
您可能关注的文档
最近下载
- JIS G 4313-1996 弹簧用冷轧不锈钢带(中文版).pdf VIP
- 针灸学课件课件.ppt VIP
- 2024年温岭市交通旅游集团有限公司招聘笔试真题汇总.docx VIP
- 小升初数学试题真题汇编-填空题50道精品及答案.pdf VIP
- 小型宾馆安全保卫人员职责.docx VIP
- 唯美中国风名著导读《红楼梦》读书分享ppt.pptx VIP
- 2025山东泰安市泰山城建投资集团有限公司一般工作人员招聘12人笔试备考题库及答案解析.docx VIP
- 2024年陕西华山旅游集团有限公司招聘笔试真题汇总.docx VIP
- 安全台帐范本.pdf VIP
- 05G359-3悬挂运输设备轨道标准图集.pdf VIP
文档评论(0)