-
Notifications
You must be signed in to change notification settings - Fork 725
Android build failure: use of undeclared identifier 'localeconv_l' (src/hb-vector-svg-utils.cc) #5791
Copy link
Copy link
Closed
Description
Found this error when I update harfbuzz 13.0.0 to vcpkg, microsoft/vcpkg#50312
FAILED: [code=1] src/libharfbuzz-vector.a.p/hb-vector-svg-utils.cc.o
/android-ndk-r29/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ --target=armv7-none-linux-androideabi28 -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -march=armv7-a -mthumb -Wformat -Werror=format-security -frtti -fexceptions -fPIC -fno-limit-debug-info --sysroot=/android-ndk-r29/toolchains/llvm/prebuilt/linux-x86_64/sysroot -Isrc/libharfbuzz-vector.a.p -Isrc -I../src/13.0.0-e0efb4ecb5.clean/src -I. -I../src/13.0.0-e0efb4ecb5.clean -I/mnt/vcpkg-ci/installed/arm-neon-android/include -fdiagnostics-color=always -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -fno-exceptions -std=c++11 -g -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -std=c++17 -DHAVE_CONFIG_H --target=armv7-none-linux-androideabi28 -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -march=armv7-a -mthumb -Wformat -Werror=format-security -frtti -fexceptions -fPIC -fno-limit-debug-info --sysroot=/android-ndk-r29/toolchains/llvm/prebuilt/linux-x86_64/sysroot -fPIC -MD -MQ src/libharfbuzz-vector.a.p/hb-vector-svg-utils.cc.o -MF src/libharfbuzz-vector.a.p/hb-vector-svg-utils.cc.o.d -o src/libharfbuzz-vector.a.p/hb-vector-svg-utils.cc.o -c ../src/13.0.0-e0efb4ecb5.clean/src/hb-vector-svg-utils.cc
../src/13.0.0-e0efb4ecb5.clean/src/hb-vector-svg-utils.cc:60:12: error: use of undeclared identifier 'localeconv_l'
60 | lc = localeconv_l (current_locale);
| ^
1 error generated.Environment
- HarfBuzz: 13.0.0
- Target: arm_neon_android, arm64_android, x64_android
- Toolchain: Android NDK (clang), Meson build
Root cause
src/hb-vector-svg-utils.cc currently uses:
#if defined(HAVE_XLOCALE_H)
...
lc = localeconv_l(current_locale);
#endifOn Android/bionic, <xlocale.h> may exist, but localeconv_l is not provided by bionic libc (only localeconv is available), so this fails to compile.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels