编译环境:
fedora 11
编译工具 arm-linux-gcc 4.1.1
编译bluez——第一次
从
http://www.kernel.org/pub/linux/bluetooth/ 下载bluez-4.95
tar zxvf bluez-4.95.tar.gz
[root@localhost bluez-4.95]# cd bluez-4.95
[root@localhost bluez-4.95]# ./configure --prefix=/usr/local/newbt --host=arm-linux CC=arm-linux-gcc
出现error:
checking for DBUS... no
configure: error: D-Bus library is required
下载dbus-1.4.1
http://dbus.freedesktop.org/releases/dbus/
tar zxvf dbus-1.4.1.tar.gz
[root@localhost dbus-1.4.1]# cd dbus-1.4.1
[root@localhost dbus-1.4.1]# CC=arm-linux-gcc ./configure --prefix=/usr/local/newbt --host=arm-linux
出现error:
checking for XML_ParserCreate_MM in -lexpat... no
configure: error: Could not find expat.h, check config.log for failed attempts
下载expat-2.0.1.tar.gz
http://sourceforge.net/projects/expat/files/expat/
解压并进入expat-2.0.1
[root@localhost expat-2.0.1]# CC=arm-linux-gcc ./configure --prefix=/usr/local/newbt --host=arm-linux
[root@localhost expat-2.0.1]#make && make install
再一次编译dbus
[root@localhost dbus-1.4.1]# CC=arm-linux-gcc ./configure CFLAGS=-I/usr/local/newbt/include LDFLAGS=-L/usr/local/newbt/lib --prefix=/usr/local/newbt --host=arm-linux --enable-abstract-sockets
出现error:
dbus-launch.c:478: error: impossible constraint in 'asm'
dbus-launch.c:479: error: impossible constraint in 'asm'
dbus-launch.c:507: error: impossible constraint in 'asm'
dbus-launch.c:508: error: impossible constraint in 'asm'
dbus-launch.c:513: error: impossible constraint in 'asm'
dbus-launch.c:537: error: impossible constraint in 'asm'
make[2]: *** [dbus-launch.o] Error 1
加上--with-x=no 解决
[root@localhost dbus-1.4.1]# CC=arm-linux-gcc ./configure CFLAGS=-I/usr/local/newbt/include LDFLAGS=-L/usr/local/newbt/lib --prefix=/usr/local/newbt --host=arm-linux --enable-abstract-sockets --with-x=no
[root@localhost dbus-1.4.1]#make
[root@localhost dbus-1.4.1]#make install
编译bluez——第二次
[root@localhost bluez-4.95]# CC=arm-linux-gcc ./configure CFLAGS=-I/usr/local/newbt/include LDFLAGS=-L/usr/local/newbt/lib --prefix=/usr/local/newbt --host=arm-linux
出现error:
checking for GLIB... no
configure: error: GLib library version 2.16 or later is required
下载glib-2.16.0
http://ftp.gnome.org/pub/gnome/sources/glib/
解压并进入(提示:glib-2.30以上比较复杂,要编译zlib和libffi)
[root@localhost glib-2.16.0]# CC=arm-linux-gcc ./configure --host=arm-linux --prefix=/usr/local/newbt glib_cv_stack_grows=no glib_cv_uscore=yeses ac_cv_func_posix_getpwuid_r=yes ac_cv_func_posix_getgrgid_r=yes glib_cv_have_qsort_r=yes
[root@localhost glib-2.16.0]#make
[root@localhost glib-2.16.0]#make install
编译bluez——第三次
[root@localhost bluez-4.95]# ./configure --prefix=/usr/local/newbt --host=arm-linux --target=arm-linux CC="arm-linux-gcc -L/usr/local/newbt/lib" --disable-audio --enable-test
出现error :
找不到dbus库,并要求设置PKG_CONFIG_LIBDIR
[root@localhost bluez-4.95]#export PKG_CONFIG_LIBDIR=/usr/local/newbt/lib/pkgconfig/
[root@localhost bluez-4.95]# ./configure --prefix=/usr/local/newbt --host=arm-linux --target=arm-linux CC="arm-linux-gcc -L/usr/local/newbt/lib" --disable-audio --enable-test
[root@localhost bluez-4.95]#make
[root@localhost bluez-4.95]#make install