它是CentOS 7.5 aarch64机器。我在目录/ opt / build中安装了gcc 6.1,并使用新版本通过-Wl,-rpath = / opt / build / lib来构建jni库。
因此,jni库绑定到/opt/build/lib/libstdc++.so.6。我用ldd和chrpath仔细检查了一下。
然后,我使用java -jar app.jar进行了尝试。
线程“ main”中的异常java.lang.UnsatisfiedLinkError:/opt/app/lib/libmylib.so.3.14.0:/lib64/libstdc++.so.6:找不到版本“ GLIBCXX_3.4.20”(由/opt/app/lib/libmylib.so.3.14.0)
很明显,即使RPATH设置为/opt/build/lib,/opt/app/lib/libmylib.so.3.14.0也会尝试链接到/lib64/libstdc++.so.6。>
不知道为什么...