Android 13 AOSP中构建示例SDK附加组件失败求助
解决构建自定义SDK附加组件时Soong依赖缺失(apex:com.android.art变体)的问题
错误信息
[100% 1/1] analyzing Android.bp files and generating ninja file at out/soong/build.ninja FAILED: out/soong/build.ninja cd "$(dirname "out/host/linux-x86/bin/soong_build")" && BUILDER="$PWD/$(basename "out/host/linux-x86/bin/soong_build")" && cd / && env -i "$BUILDER" --top "$TOP" --soong_out "out/soong" --out "out" -o out/soong/build.ninja --globListDir build --globFile out/soong/globs-build.ninja -t -l out/.module_paths/Android.bp.list --available_env out/soong/soong.environment.available --used_env out/soong/soong.environment.used.build Android.bp error: prebuilts/module_sdk/conscrypt/current/Android.bp:20:1: dependency "art-bootclasspath-fragment" of "conscrypt-module-sdk_com.android.conscrypt-bootclasspath-fragment@current" missing variant: apex:com.android.art available variants: os:android,arch:common error: prebuilts/module_sdk/conscrypt/current/Android.bp:20:1: dependency "prebuilt_art-bootclasspath-fragment" of "conscrypt-module-sdk_com.android.conscrypt-bootclasspath-fragment@current" missing variant: apex:com.android.art available variants: os:android,arch:common 10:34:20 soong bootstrap failed with: exit status 1
解决方法
检查构建目标与环境变量
确保构建触发ART APEX组件编译,可提前设置环境变量:export ART_APEX=true执行
lunch选择目标后,确认目标配置包含ART APEX相关模块。调整Android.bp依赖配置
打开prebuilts/module_sdk/conscrypt/current/Android.bp,定位第20行的依赖声明。若SDK附加组件无需依赖ART APEX变体,可修改依赖的variant过滤规则,移除apex:com.android.art约束,或替换为可用的os:android,arch:common变体。清理并重建构建环境
执行以下命令清理旧构建文件,重新生成Soong配置:make clean rm -rf out/soong source build/envsetup.sh lunch <你的目标设备> make匹配示例与Android版本
确认device/sample示例配置与当前Android源码版本一致,不同版本Soong规则存在差异,同步对应版本的示例文件后再尝试构建。
内容的提问来源于stack exchange,提问作者charlescptsai
相关产品推荐
相关产品推荐

