这篇文章memo一下Android应用构建时碰到的问题与解决方法。
问题现象
错误提示信息:
/root/.gradle/cachees/...省略.../aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
各组件版本:
JDK: 1.8
Gradle: 4.4
SDK:26.0.3
使用方式如下:Gradle为镜像方式,SDK为外部设定完毕之后挂载进来,镜像之中设定ANDROID_HOME。
问题定位
使用ldd命令确认aapt的动态链接库情况
执行命令:ldd aapt
显示结果为:ldd: ./appt: No such file or directory
对应方法
方式1: 将整体的SDK打包到gradle镜像中
具体可参看:https://liumiaocn.blog.csdn.net/article/details/103650668
方式2: 添加lib32的包
在保证sdkmanager下载并挂载至gradle容器中的卷和gradle使用同一操作系统的前提下,在grale的镜像中安装如下相关的包:
lib32stdc++6
lib32z1
lib32z1-dev