原创 mini2440上编译bluez

2009-8-17 00:33 1243 5 5 分类: MCU/ 嵌入式

发布: 2009-5-12 16:34 |  作者: hnrain |   查看: 29次



最近把蓝牙协议栈bluez编译到了mini2440的linux平台上了,一切都还比较顺手。


主要还是参考了一些前辈的经验。具体的链接地址如下:


http://clc168.blogspot.com/2008/04/bluetootharm-embedded-linux.html


http://blog.chinaunix.net/u2/88891/showart_1743397.html


先重新编译开发板提供的内核,我把Networking>>Bluetooth subsystem support里面的基本上都选上了,然后就直接编译,没有任何错误


然后编译bluez的库


==============================================================================================================
#bluez-libs-3.24

代碼:
tar zxvf bluez-libs-3.24.tar.gz
cd bluez-libs-3.24
./configure --prefix=/opt/FRiendlyARM/mini2440/blue_dir --target=arm-linux CC="arm-linux-gcc" --build=i686 --host=arm-linux


==============================================================================================================
#libxml2-2.6.31

代碼:
tar zxvf libxml2-2.6.31.tar.gz
cd libxml2-2.6.31
./configure --prefix=/FRiendlyARM/mini2440/blue_dir --target=arm-linux CC="arm-linux-gcc" --build=i686 --host=arm-linux


==============================================================================================================
#dbus-1.0.2

代碼:
tar zxvf dbus-1.0.2.tar.gz
cd dbus-1.0.2
export ac_cv_have_abstract_sockets=yes
export PKG_CONFIG_PATH=/FRiendlyARM/mini2440/blue_dir/lib/pkgconfig
./configure --prefix=/work/msq/test/blue_dir --target=arm-linux CC="arm-linux-gcc" --build=i686 --host=arm-linux --with-x=no


==============================================================================================================
#bluez-utils-3.24

代碼:

tar zxvf bluez-utils-3.24.tar.gz
cd bluez-utils-3.24
export PKG_CONFIG_PATH=/FRiendlyARM/mini2440/blue_dir/lib/pkgconfig
./configure --prefix=/work/msq/test/blue_dir --target=arm-linux CC="arm-linux-gcc -I/work/msq/test/blue_dir/include -L/work/msq/test/blue_dir/lib" --build=i686 --host=arm-linux


我还把libusb,libsndfile编译了进去


bluez-lib编译很容易,主要是blue-utils可能会出错。


可以尝试把依赖包都编译好


blue-utils编译好直接拷贝到root_default根目录用mkyffsimage做成yaffs文件系统和之前编译好的内核一起下载下去


启动系统


然后直接插上蓝牙适配器hciconfig hci0 up


hcid /etc/bluetooth/hcid.conf


hciconfig -a


如果出现hci_scodata_packet: hci0 SCO packet for unknown connection handle


可以参照这里修改并重新编译内核


http://forum.ubuntu.org.cn/viewtopic.php?f=42&t=167765


全部完成以后就可以测试了,


我的测试程序是用这里的


http://blog.csdn.net/ifq/archive/2006/06/07/779228.aspx


http://blog.csdn.net/yingfox/archive/2007/11/11/1878586.aspx


客户端程序编译好下载到mini2440


服务端程序我用的PC平台+蓝牙适配器,在magic linux下同样先


hciconfig hci0 up


hcid /etc/bluetooth/hcid.conf


hciconfig -a


然后编译测试程序用gcc -o xxx xxx.c -lbluetooth


然后./xxx


Ok,可以了


但是PC做客户端没有测试成功

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
5
关闭 站长推荐上一条 /3 下一条