Version:
Bluez: 3.36
Gcc : Arm-linux-gcc-3.4.1
Required software packages:
Libxml2-2.7.4
Dbus1.0.2
G Lib-2.16.5
Bluez-utils-3.36 depends on Libraries and glib, while libraries depends onLibxml2So the compiling order is libxml, libraries, glib, bluez-utils-3.36.
The Process Writing is simple. In fact, there are countless problems in my own compilation process, but they are all simplified to the configuration. Therefore, configuare must be configured properly.
1. Compile bluez-libs-3.36
./Configure -- Host = arm-Linux -- prefix = "$ PWD/../release/bluez_libs"
Make & make install
NoThe dependency library is directly compiled.
2. Compile libxml2-2.7.4
./Configure -- prefix = "$ PWD/../release/bluez_libs" -- Host = arm-Linux
Make
Make install
No dependent library, successfully passed
3. Compile dbus1.0.2
Echo ac_cv_have_effecact_sockets = Yes> arm-linux.cache
. /Configure -- prefix = "$ PWD /.. /release/bluez_libs "-- Host = arm-Linux cc =" arm-Linux-gcc-I/home/Jay/tools/bluez3/release/bluez_libs/include-L/home/ jay/tools/bluez3/release/bluez_libs/lib"-- Cache-files = arm-linux.cache -- With-x = No
-- With-xml = libxml pkg_config_path = "$ PWD/../release/bluez_libs/lib/pkgconfig"
Make & make install
Successfully passed
4. Compile the glib-2.16.5
Echo ac_cv_type_long_long = Yes> arm-linux.cache
Echo glib_cv_stack_grows = NO> arm-linux.cache
Echo glib_cv_uscore = NO> arm-linux.cache
Echo ac_cv_func_posix_getgrgid_r = Yes> arm-linux.cache
Echo ac_cv_func_posix_getpwuid_r = Yes> arm-linux.cache
. /Configure -- prefix = "$ PWD /.. /release/bluez_libs "-- Host = arm-Linux cc =" arm-Linux-gcc-I/home/Jay/tools/bluez3/release/bluez_libs/include
-L/home/Jay/tools/bluez3/release/bluez_libs/lib"-- Cache-file = arm-linux.cache pkg_config_path = "$ PWD/../release/bluez_libs/lib/pkgconfig"
# Make
# Make install
5. Compile bluez-utils-3.36.
. /Configure -- prefix = "$ PWD /.. /release/bluez_libs "-- Host = arm-Linux cc =" arm-Linux-gcc-I/home/Jay/tools/bluez3/release/bluez_libs/include-L/home/ jay/tools/bluez3/release/bluez_libs/lib-shared "pkg_config_path =" $ PWD /.. /release/bluez_libs/lib/pkgconfig"
-- Disable-audio -- enable-test
Make & make install
If-shared is not appended, the _ fini_array_start error is annoying.
Storage. C: 286: Error: 'enokey' undeclared
Increase storage. C # define enokey 161
Now the compilation of bluez is complete.
File System creation:
Copy the files in sbin and bin to the sbin file system.
Libbluetooth. So
Libbluetooth. So.2Libbluetooth. so.2.11.2
Libxml2.so
Libxml2.so. 2 libxml2.so. 2.7.4
Libglib-2.0.so
Libglib-2.0.so.0 libglib-2.0.so.0.1600.5
Libgmodule-2.0.so.0 Libgmodule-2.0.so.0.1600.5
The front is a soft link, and the back is the front
Copy the ETC folder.
Finally, remember to copy the hcidump (requires additional compilation without any difficulty) to sbin, which facilitates debugging.