【发布时间】:2019-03-15 13:53:19
【问题描述】:
我在 Android NDK 应用程序中的本机 C++ 代码出错
我的 main.cpp
#include <stdio.h>
int main()
{
printf("Hello, world\n");
return 0;
}
main.c 完全一样。 如果我运行
/home/rip/Music/android-ndk-r19b/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android26-clang -pie main.c
然后
adb push a.out /data/local/tmp
和
adb shell /data/local/tmp/a.out
一切正常。但是如果我运行
/home/rip/Music/android-ndk-r19b/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android26-clang++ -pie main.cpp
然后
adb push a.out /data/local/tmp
和
adb shell /data/local/tmp/a.out
错误信息是:
CANNOT LINK EXECUTABLE "/data/local/tmp/a.out": library "libc++_shared.so" not found
然后我尝试运行
/home/rip/Music/android-ndk-r19b/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android26-clang++ -pie hello1.cpp /home/rip/Music/android-ndk-r19b/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/aarch64-linux-android/libc++_shared.so
链接库,但它无论如何都不起作用。
【问题讨论】:
-
也许用
LD_LIBRARY_PATH
标签: android c++ android-ndk clang