Bluez交叉编译-bluez4.101

来源:互联网 发布:美食美客软件 编辑:程序博客网 时间:2024/06/04 18:36

第一篇博客!自己弄东西时,看到很多网友的帖子,对在下帮助甚大。这里奉献下自己的成果经验。本人菜鸟,如有不对之处,欢迎指出。

对于bluez的交叉编译,网上有很多,但是大部分都是编译bluez-utils这个bluez的工具包,但是bluez4.48之后的版本,都是将工具包包含在内的,所以不需要编bluez-utils了。实在是编那个的时候总是有问题。下面的两个网站上,有很全的编译过程(但不是交叉编译)和各种库的下载

http://www.linuxfromscratch.org/blfs/view/stable/general/bluez.html    ——这个是bluez4.101
http://www.linuxfromscratch.org/blfs/view/svn/general/bluez.html         ——这个是bluez5.21

Bluez4.101交叉编译的具体步骤
首先确定安装目录,安装目录最好不是用户目录,以免有权限限制.
先进行环境变量的设置,告诉之后系统,我的库安装的目录
export PKG_CONFIG_PATH=/path/usr/lib/pkgconfig

Expat
./configure --prefix=/path/usr --host=arm-linux-gnueabihf
&& make
sudo make install

这个库是较好编的,其中path就是你编译bluez需要存放的地址,所有编译的库需存放在同一个目录下,最后可将编译好的bluez这个文件夹,直接copy到开发板的内存中,可直接使用


D-bus
./configure
CFLAGS=-I/path/usr/include LDFLAGS=-L/path/usr/lib  
--prefix=/path/usr
--host=arm-linux-gnueabihf  \    
--with-x=no && make
sudo make install



glib(之前要通过源程序装zlib和apt-get libglib2.0-dev)
export PKG_CONFIG_LIBDIR=/path/usr/lib/pkgconfig/
CC=arm-linux-gnueabihf-gcc
./configure \
    --host=arm-linux-gnueabihf \
    --prefix=/path/usr \
    --disable-installed-tests \
    ac_cv_type_long_long=yes \
    glib_cv_stack_grows=no \
    glib_cv_uscore=no \
    ac_cv_func_posix_getpwuid_r=yes \
    ac_cv_func_posix_getgrgid_r=yes && make


bluez-4.101   jiaocha(ok)
export PKG_CONFIG_LIBDIR=/path/usr/lib/pkgconfig/
mkdir -p /path/lib/systemd/system
mkdir -p /path/usr/lib/systemd
CC=arm-linux-gnueabihf-gcc
 ./configure  \
    --host=arm-linux-gnueabihf \
    --with-systemdsystemunitdir=/path/lib/systemd/system/ \
    --with-systemduserunitdir=/path/usr/lib/systemd \
    --prefix=/path/usr \
    --with-dbussystembusdir=/path \
    --disable-udev \
    --enable-experimental \
  #  LDFLAGS=-lncurses \加上的话,C无法产生可执行文件(这里也可能是我这两个环境变量给的值出现了问题,如有大神知道,欢迎批评指正)
  #  CFLAGS=-I/path/include
&& make

1 0
原创粉丝点击