Hi all,

With help of Steven Watanabe, Vladimir Prus and Boost-for-Android project, I've finally run the regression tests on Android ARM. Results can be already seen on the regression test page for trunk.

Here is a description of some common issues that can be seen in regression tests results:

"arm-linux-androideabi/bin/ld.exe: error: cannot find -lrt"
Some of the Android libraries (for example librt) are merged with libc. Some patches to b2 required not to add -lrt fot the platform.

"soinfo_link_image(linker.cpp:1635): could not load library "libboost_unit_test_framework-gcc-d-1_55.so.1.55.0" needed by "./copy_if_test1"; caused by load_library(linker.cpp:745): library "libboost_unit_test_framework-gcc-d-1_55.so.1.55.0" not found"
This is because of cross compilation - tests are compiled in Win and then copied to the emulator. This is an error in my copying script that will be fixed someday.


Also please note, that sources are compiled with -DBOOST_ASIO_DISABLE_STD_ATOMIC and -DBOOST_AC_USE_PTHREADS because there are some issues with std::atomic on android (See https://code.google.com/p/android/issues/detail?id=42735#makechanges ) This must be possibly added to the config of the libraries by default.

Some hints:
* You can check for android platform in your code using defined(__ANDROID__).
* __ANDROID__ can run on different hardware, so do not assume that it will be always ARM.
* Having problems with Jamfile and cross compilation? Use <target-os> instead of <host-os> in your jamfiles.
* Boost-for-Android project (https://github.com/MysticTreeGames/Boost-for-Android) may contain some useful fixes for your library. Author of the library "would love" to see the issues integrated, see discussion at https://github.com/MysticTreeGames/Boost-for-Android/pull/15


This letter is cc'ed to the boost-build because of:
* "-lrt" issues
* Is there a way to install/call_script for all the boost libraries before running the regression tests?
* specifying "<threadapi>pthread" in user-config.jam does not work

--
Best regards,
Antony Polukhin