我正在尝试使用Android NDK CLANG编译器(arm-linux-androideabi-clang ++)从Ubuntu交叉编译适用于Android的grpc C ++( https://github.com/grpc/grpc )。
我尝试过下面的方法将其编译为Android。
export PATH=/root/Android/arm-26-toolchain-clang/bin:$PATH
export SYSROOT=/root/Android/arm-26-toolchain-clang/sysroot
export CC="arm-linux-androideabi-clang --sysroot $SYSROOT"
export CXX="arm-linux-androideabi-clang++ --sysroot $SYSROOT"
make CFLAGS='-std=c11 -march=armv7-a -D__ANDROID_API__=26' CXXFLAGS='- std=c++11 -frtti -fexceptions -march=armv7-a -D__ANDROID_API__=26' LIBS='-llog -lz -lc++_static' -j2
编译zlib.c时抛出错误-错误:函数“ lseek”的隐式声明在C99中无效
如何使用上述CLANG编译器指定使用C11进行构建?
当我允许它继续前进而忽略此错误时,它停止在下面-
./src/core/lib/surface/completion_queue.h:92:5: error: unknown type name
'grpc_experimental_completion_queue_functor'
grpc_experimental_completion_queue_functor* shutdown_callback);
您能否为工具链arm-linux-androideabi帮助交叉编译gRPC for android?
谢谢