Closed granger35 closed 3 years ago
I have always turned off the three below, maybe it's an option for you too.
boost:without_locale = True boost:without_log = True boost:without_stacktrace = True
Thank you @dmn-star ,
You are right, without_locale and without_log turned to True do the job, but i need the boost logs (and logs are required if without_local is set to True). I have to set i18n_backend_iconv to libiconv for now, default libc does not work.
checking the config.log I see the error:
6 Undefined symbols for architecture arm64:
7 "_iconv_open", referenced from:
8 _main in has_iconv_libc_obj.o
9 ld: symbol(s) not found for architecture arm64
perhaps, android's libc (bionic) doesn't provide iconv interface? let's check, and if so, for Android we should use libiconv as a default backend (instead of libc iconv).
found answer: https://github.com/android/ndk/issues/702
TLDR: iconv is provided by bionic since API level 28
for lower API levels we should default to i18n_backend_iconv = "libiconv"
I'll prepare the fix
Thank you for pointing out the problem and fixing it.
How to fix this issue in Linux?
======== Installing packages ======== b2/4.9.6: Already installed! (1 of 6) bzip2/1.0.8: Already installed! (2 of 6) fmt/8.0.1: Already installed! (3 of 6) gsl-lite/0.37.0: Already installed! (4 of 6) zlib/1.2.13: Already installed! (5 of 6)
-------- Installing package boost/1.71.0 (6 of 6) --------
boost/1.71.0: Building from source
boost/1.71.0: Package boost/1.71.0:fbf39d5786e603f013aa4437f27a29522ee048c9
boost/1.71.0: Building your package in /home/jiqiang/.conan2/p/t/boost6d4ff9145f3c4/b
boost/1.71.0: Calling generate()
boost/1.71.0: Generators folder: /home/jiqiang/.conan2/p/t/boost6d4ff9145f3c4/b/build-debug/conan
boost/1.71.0: Generating aggregated env files
boost/1.71.0: Generated aggregated env files: ['conanbuild.sh', 'conanrun.sh']
boost/1.71.0: Calling build()
boost/1.71.0: WARN: replace_in_file didn't find pattern '/ thread_local /' in '/home/jiqiang/.conan2/p/boost4d7c500cb2cf1/s/src/boost/stacktrace/detail/libbacktrace_impls.hpp' file.
boost/1.71.0: WARN: replace_in_file didn't find pattern '/ static __thread /' in '/home/jiqiang/.conan2/p/boost4d7c500cb2cf1/s/src/boost/stacktrace/detail/libbacktrace_impls.hpp' file.
boost/1.71.0: WARN: replace_in_file didn't find pattern 'local generic-os = [ set.difference $(all-os) : aix darwin vxworks solaris osf hpux ] ;' in '/home/jiqiang/.conan2/p/boost4d7c500cb2cf1/s/src/tools/build/src/tools/gcc.jam' file.
boost/1.71.0: WARN: replace_in_file didn't find pattern 'local no-threading = android beos haiku sgi darwin vxworks ;' in '/home/jiqiang/.conan2/p/boost4d7c500cb2cf1/s/src/tools/build/src/tools/gcc.jam' file.
boost/1.71.0: WARN: replace_in_file didn't find pattern '
- default address-model : 64-bit [1]
- default architecture : x86 [1]
- C++11 mutex : no [2]
- lockfree boost::atomic_flag : no [2]
- Boost.Config Feature Check: cxx11_auto_declarations : no [2]
- Boost.Config Feature Check: cxx11_constexpr : no [2]
- Boost.Config Feature Check: cxx11_defaulted_functions : no [2]
- Boost.Config Feature Check: cxx11_final : no [2]
- Boost.Config Feature Check: cxx11_hdr_mutex : no [2]
- Boost.Config Feature Check: cxx11_hdr_tuple : no [2]
- Boost.Config Feature Check: cxx11_lambdas : no [2]
- Boost.Config Feature Check: cxx11_noexcept : no [2]
- Boost.Config Feature Check: cxx11_nullptr : no [2]
- Boost.Config Feature Check: cxx11_rvalue_references : no [2]
- Boost.Config Feature Check: cxx11_template_aliases : no [2]
- Boost.Config Feature Check: cxx11_thread_local : no [2]
- Boost.Config Feature Check: cxx11_variadic_templates : no [2]
- Boost.Config Feature Check: cxx11_auto_declarations : no [3]
- Boost.Config Feature Check: cxx11_constexpr : no [3]
- Boost.Config Feature Check: cxx11_defaulted_functions : no [3]
- Boost.Config Feature Check: cxx11_final : no [3]
- Boost.Config Feature Check: cxx11_hdr_mutex : no [3]
- Boost.Config Feature Check: cxx11_hdr_tuple : no [3]
- Boost.Config Feature Check: cxx11_lambdas : no [3]
- Boost.Config Feature Check: cxx11_noexcept : no [3]
- Boost.Config Feature Check: cxx11_nullptr : no [3]
- Boost.Config Feature Check: cxx11_rvalue_references : no [3]
- Boost.Config Feature Check: cxx11_template_aliases : no [3]
- Boost.Config Feature Check: cxx11_thread_local : no [3]
- Boost.Config Feature Check: cxx11_variadic_templates : no [3]
- has_icu builds : no [2]
- zlib : no [4]
- bzip2 : no [4]
- iconv (libc) : no [2]
boost/1.71.0: ERROR: Package 'fbf39d5786e603f013aa4437f27a29522ee048c9' build failed boost/1.71.0: WARN: Build folder /home/jiqiang/.conan2/p/t/boost6d4ff9145f3c4/b/build-debug
Recipe 'boost/1.71.0' cannot build its binary It is possible that this recipe is not Conan 2.0 ready If the recipe comes from ConanCenter check: https://conan.io/cci-v2.html If it is your recipe, check if it is updated to 2.0
ERROR: boost/1.71.0: Error in build() method, line 887 self.run(full_command) ConanException: Error 1 while executing
Package and Environment Details
Conan profile
[settings] arch=armv8 build_type=Release compiler=clang compiler.libcxx=libc++ compiler.version=8 os=Android os.api_level=21 compiler.cppstd=17 [options] [conf] [build_requires] [env]
conan@d52884b71ed7:~$ conan install boost/1.74.0@ --build=missing --update -pr:b=build -pr:h=host Configuration (profile_host): [settings] arch=armv8 build_type=Release compiler=clang compiler.cppstd=17 compiler.libcxx=libc++ compiler.version=8 os=Android os.api_level=21 [options] [build_requires] [env]
Configuration (profile_build): [settings] arch=x86_64 build_type=Release compiler=gcc compiler.cppstd=17 compiler.libcxx=libstdc++ compiler.version=7 os=Linux [options] [build_requires] [env]
bzip2/1.0.8: WARN: Can't update, no package in remote zlib/1.2.11: WARN: Can't update, no package in remote boost/1.74.0: WARN: Package binary is corrupted, removing: e45c5c16747667b89274c3279a1f47ccf4daa1f9 Installing package: boost/1.74.0 Requirements boost/1.74.0 from 'conan-bcom' - Cache bzip2/1.0.8 from 'conancenter' - Cache libbacktrace/cci.20210118 from 'conan-bcom' - Cache zlib/1.2.11 from 'conan-bcom' - Cache Packages boost/1.74.0:e45c5c16747667b89274c3279a1f47ccf4daa1f9 - Build bzip2/1.0.8:d0202e15ed2bffe00fb2ab7504e436269af6ec9f - Cache libbacktrace/cci.20210118:3cc1debdebdc6ad0796bb6699c1ec121d98add89 - Cache zlib/1.2.11:3cc1debdebdc6ad0796bb6699c1ec121d98add89 - Cache Build requirements b2/4.5.0 from 'conan-solar' - Cache Build requirements packages b2/4.5.0:4db1be536558d833e52e862fd84d64d75c2b3656 - Cache
Cross-build from 'Linux:x8664' to 'Android:armv8' Installing (downloading, building) binaries... b2/4.5.0: Already installed! bzip2/1.0.8: Already installed! bzip2/1.0.8: Appending PATH environment variable: /home/conan/.conan/data/bzip2/1.0.8///package/d0202e15ed2bffe00fb2ab7504e436269af6ec9f/bin libbacktrace/cci.20210118: Already installed! zlib/1.2.11: Already installed! boost/1.74.0: Applying build-requirement: b2/4.5.0 boost/1.74.0: WARN: Build folder is dirty, removing it: /home/conan/.conan/data/boost/1.74.0///build/e45c5c16747667b89274c3279a1f47ccf4daa1f9 boost/1.74.0: Building your package in /home/conan/.conan/data/boost/1.74.0//_/build/e45c5c16747667b89274c3279a1f47ccf4daa1f9 boost/1.74.0: Generator txt created conanbuildinfo.txt boost/1.74.0: Aggregating env generators boost/1.74.0: Calling build() WARN: replace_infile didn't find pattern '$(>) > $(<)' in '/home/conan/.conan/data/boost/1.74.0//_/source/source_subfolder/libs/stacktrace/build/Jamfile.v2' file. WARN: replace_in_file didn't find pattern '/ thread_local /' in '/home/conan/.conan/data/boost/1.74.0///source/source_subfolder/boost/stacktrace/detail/libbacktrace_impls.hpp' file. WARN: replace_in_file didn't find pattern '/ static __thread /' in '/home/conan/.conan/data/boost/1.74.0///source/source_subfolder/boost/stacktrace/detail/libbacktraceimpls.hpp' file. boost/1.74.0: WARN: Patching user-config.jam boost/1.74.0: WARN: using zlib : 1.2.11 :"/home/conan/.conan/data/zlib/1.2.11/ //package/3cc1debdebdc6ad0796bb6699c1ec121d98add89/include" "/home/conan/.conan/data/zlib/1.2.11/ //package/3cc1debdebdc6ad0796bb6699c1ec121d98add89/lib" z ;
using bzip2 : 1.0.8 : "/home/conan/.conan/data/bzip2/1.0.8/ //package/d0202e15ed2bffe00fb2ab7504e436269af6ec9f/include" "/home/conan/.conan/data/bzip2/1.0.8/ /_/package/d0202e15ed2bffe00fb2ab7504e436269af6ec9f/lib" bz2 ;
using "clang-linux" : : /android-ndk-r19c/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21-clang++ :