我在 Android NDK 应用程序中的本机 C++ 代码中遇到错误
我的主.cpp
#include <stdio.h>
int main()
{
printf("Hello, world\n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
main.c 是完全一样的。如果我跑
/home/rip/Music/android-ndk-r19b/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android26-clang -pie main.c
Run Code Online (Sandbox Code Playgroud)
然后
adb push a.out /data/local/tmp
Run Code Online (Sandbox Code Playgroud)
和
adb shell /data/local/tmp/a.out
Run Code Online (Sandbox Code Playgroud)
一切正常。但如果我跑
/home/rip/Music/android-ndk-r19b/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android26-clang++ -pie main.cpp
Run Code Online (Sandbox Code Playgroud)
然后
adb push a.out /data/local/tmp
Run Code Online (Sandbox Code Playgroud)
和
adb shell /data/local/tmp/a.out
Run Code Online (Sandbox Code Playgroud)
错误信息是:
CANNOT LINK EXECUTABLE "/data/local/tmp/a.out": library "libc++_shared.so" not found
Run Code Online (Sandbox Code Playgroud)
然后我试着跑
/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
Run Code Online (Sandbox Code Playgroud)
链接库,但无论如何它都不起作用。
如果写了下面的代码:
Repeater { model: 10;
delegate: Rectangle { width: 200; height:
20; color: "white";}}
Run Code Online (Sandbox Code Playgroud)
我怎样才能给所有 10 个矩形一个不同的 id?