Quantcast
Channel: Sam的技术Blog
Viewing all articles
Browse latest Browse all 158

BlueZ 5.43 Cross Compile

$
0
0
作者:Sam (甄峰)   sam_code@hotmail.com

之前屡次编译BlueZ(http://blog.sina.com.cn/s/blog_602f87700100zb47.html). 中间有段时间以为不会再编译BlueZ了,其一是Android使用自己的Blue协议栈(BluetDroid)取代了BlueZ。其二是Bluetooth不再是工作重心。没想到搞ROS后,又回到Linux环境,再次需要编译Bluez.  这个令人不快的任务又一次放在面前。


0. Download BlueZ
http://www.bluez.org/

1. X86 Version make
sudo apt-get install systemd
sudo apt-get install libical-dev
sudo apt-get install libudev-dev

$./configure
$make

注意,如果没有 --enable-library,不会编译出动态或静态库的。

$./configure --enable-shared --enable-static --enable-library
$make clean;make

可以看到,库被放在了:
./lib/.libs/libbluetooth.so
./lib/.libs/libbluetooth.a


2. CrossCompile:
2.0: 交叉编译准备:
编译之前,依例看看README:
In order to compile Bluetooth utilities you need following software packages:
        - GCC compiler
        - GLib library
        - D-Bus library
        - udev library (optional)
        - readline (command line clients)
所以在交叉编译中,估计至少要交叉编译GLib和D-BUS。 

2.1:glib编译:
echo glib_cv_uscore=no>>arm-linux.cache  
echo glib_cv_stack_grows=no>>arm-linux.cache
CC=arm-linux-gnueabihf-gcc ./configure --host=arm-linux --cache-file=arm-linux.cache --enable-libmount=no --with-pcre=no

make



 

Viewing all articles
Browse latest Browse all 158

Trending Articles