android编译make详细过程日志查看showcommands/verbose.log

背景:

平时做aosp开发时候,如果要编译某一个模块就会直接使用命令make,或者make xxx模块。
比如:

make SettingsProvider
make SystemUI
make bootanimation

这样就直接有对应的apk,或者bin文件了,具体这些apk或者bin文件是如果生成的其实一点都不清楚,那么有没有什么方法可以看到这些bin文件或者apk的是如何生成的呢?特别时候有时候做一些错误排查等情况,非常需要一个详细日志来看一下错在哪里。
下面就来介绍一下如何查看这些make产物的详细输出日志。

aosp8.1的低版本查看方式

在aosp8.1版本时候可以使用make showcommands xx目标的方式来展示详细的编译日志,具体使用如下:
bin文件情况

 make showcommands  bootanimation

日志太多,可以取一点核心部分看看
在这里插入图片描述
上图可以看出来,最开始是编译个目标总共的任务数量,有一个详细的任务进度,实际上编译bin文件用的是prebuilts/clang/host/linux-x86/clang-4053586/bin/clang++这个工具链进行编译的,有通过参数把头文件目录,和cpp源文件进行编译。

编译apk情况
同样如果编译apk则展示如下
在这里插入图片描述
apk的编译相对流程就比较多,上面日志太多,只展示了一小部分,即aapt2打包资源:
在这里插入图片描述
aapt->aidl -> javac-> dx(dex)-> apkbuilder-> jarsigner-> zipalign
第一步:打包资源文件,生成R.java文件
第二步:处理AIDL文件,生成对应的.java文件(工程没有用到AIDL,那这个过程就可以省了)
第三步:编译Java文件,生成对应的.class文件
第四步:把.class文件转化成.dex文件
第五步:打包生成未签名的.apk文件
第六步:对未签名.apk文件进行签名
第七步:对签名后的.apk文件进行对齐处理

aosp14高版本查看方式:

如果高版本android上面也使用make showcommands xx命令会发生什么呢?

test@test:~/disk2/aosp14$ make  showcommands SettingsProvider
! The argument `showcommands` is no longer supported.
! Instead, the verbose log is always written to a compressed file in the output dir:
!
!   gzip -cd /home/test/disk2/aosp14/out/verbose.log.gz | less -R
!
! Older versions are saved in verbose.log.#.gz files

15:34:32 Invalid argument

#### failed to build some targets (1 seconds) ####

可以看到这里直接报错说showcommands已经不再支持了,不过这里也说了详细的日志已经被压缩打包成了verbose.log.gz文件,直接去这个文件看就行。

下面来看看这个verbose.log.gz文件情况:

test@test:~/disk2/nx563j_aosp14/out$ ls -l verbose.log.*
-rw-rw-r-- 1 test test  5753 Sep 20 13:57 verbose.log.1.gz
-rw-rw-r-- 1 test test 11123 Sep 20 14:00 verbose.log.gz

这里注意verbose.log.gz是在out的根目录查看既可以,但这里需要注意一下,它一般是编译几次就有几个这种verbose.log.gz,末尾加了数字,比如verbose.log.1.gz,verbose.log.2.gz的方式。这里一般查看的最新的日志就是 verbose.log.gz,可以从文件时间情况也看得出来。
打开后如下:
在这里插入图片描述
看看日志
在这里插入图片描述
可以看得出和原来的showcommands方式是一样的,所以高版本aosp其实这块做的更好了,保存成了文件,更加方便我们查看。

更多framework技术干货,请关注下面“千里马学框架”

ROR: Could not parse android.hardware.automotive.vehicle@2.0::types. Aborting. [ 0% 2/725] HIDL inheritance hierarchy: android.hardware.automotive.vehicle@2.0::IVehicleCallback => 'out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehi FAILED: out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0-inheritance-hierarchy/gen/IVehicleCallback_inheritance_hierarchy.json rm -f 'out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0-inheritance-hierarchy/gen/IVehicleCallback_inheritance_hierarchy.json' && out/host/linux -x86/bin/hidl-gen -L inheritance-hierarchy -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.automotive.vehicle@2.0::IVehicleCallback > 'out/soong/.intermedi ates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0-inheritance-hierarchy/gen/IVehicleCallback_inheritance_hierarchy.json' ERROR: android.hardware.automotive.vehicle@2.0::types has hash f2d2940b85791486e76c9111ba376b39701bb597e570659c7387d064e1a4d182 which does not match hash on record. This interface has been frozen. Do not change it! ERROR: Could not parse android.hardware.automotive.vehicle@2.0::IVehicleCallback. Aborting. [ 0% 3/725] HIDL java: hardware/interfaces/automotive/vehicle/2.0/types.hal hardware/interfaces/automotive/vehicle/2.0/IVehicle.hal hardware/interfaces/automotive/vehicle/2.0/IVehicleCallback.hal hardwa FAILED: out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle-V2.0-java_gen_java/gen/srcs.srcjar rm -rf out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle-V2.0-java_gen_java/gen && out/host/linux-x86/bin/hidl-gen -R -p . -d out/soong/.intermediate s/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle-V2.0-java_gen_java/gen/srcs.srcjar.d -o out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardwa re.automotive.vehicle-V2.0-java_gen_java/gen/srcs -L java -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.automotive.vehicle@2.0 && out/host/linux-x86/bin/ soong_zip -o out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle-V2.0-java_gen_java/gen/srcs.srcjar -C out/soong/.intermediates/hardware/interfaces/aut omotive/vehicle/2.0/android.hardware.automotive.vehicle-V2.0-java_gen_java/gen/srcs -D out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle-V2.0-java_ge n_java/gen/srcs ERROR: android.hardware.automotive.vehicle@2.0::types has hash f2d2940b85791486e76c9111ba376b39701bb597e570659c7387d064e1a4d182 which does not match hash on record. This interface has been frozen. Do not change it! ERROR: Validation failed. [ 0% 4/725] HIDL inheritance hierarchy: android.hardware.automotive.vehicle@2.0::IVehicle => 'out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0- FAILED: out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0-inheritance-hierarchy/gen/IVehicle_inheritance_hierarchy.json rm -f 'out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0-inheritance-hierarchy/gen/IVehicle_inheritance_hierarchy.json' && out/host/linux-x86/bin /hidl-gen -L inheritance-hierarchy -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.automotive.vehicle@2.0::IVehicle > 'out/soong/.intermediates/hardware/in terfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0-inheritance-hierarchy/gen/IVehicle_inheritance_hierarchy.json' ERROR: android.hardware.automotive.vehicle@2.0::types has hash f2d2940b85791486e76c9111ba376b39701bb597e570659c7387d064e1a4d182 which does not match hash on record. This interface has been frozen. Do not change it! ERROR: Could not parse android.hardware.automotive.vehicle@2.0::IVehicle. Aborting. [ 0% 5/725] HIDL c++-headers: hardware/interfaces/automotive/vehicle/2.0/types.hal hardware/interfaces/automotive/vehicle/2.0/IVehicle.hal hardware/interfaces/automotive/vehicle/2.0/IVehicleCallback.hal FAILED: out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/IVehicle.h out/soong/.interm ediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/IVehicleCallback.h out/soong/.intermediates/hardware/ interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/BsVehicle.h out/soong/.intermediates/hardware/interfaces/automotive/ve hicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/BsVehicleCallback.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/androi d.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/BnHwVehicle.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive. vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/BnHwVehicleCallback.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_ge nc++_headers/gen/android/hardware/automotive/vehicle/2.0/BpHwVehicle.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/andro id/hardware/automotive/vehicle/2.0/BpHwVehicleCallback.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/au tomotive/vehicle/2.0/IHwVehicle.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/IH wVehicleCallback.h out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/types.h out/soong /.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/hwtypes.h rm -rf out/soong/.intermediates/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen && out/host/linux-x86/bin/hidl-gen -R -p . -d out/soong/.intermediate s/hardware/interfaces/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen/android/hardware/automotive/vehicle/2.0/IVehicle.h.d -o out/soong/.intermediates/hardware/interface s/automotive/vehicle/2.0/android.hardware.automotive.vehicle@2.0_genc++_headers/gen -L c++-headers -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.automoti ve.vehicle@2.0 ERROR: android.hardware.automotive.vehicle@2.0::types has hash f2d2940b85791486e76c9111ba376b39701bb597e570659c7387d064e1a4d182 which does not match hash on record. This interface has been frozen. Do not change it! 如何修改
最新发布
11-18
编译libwifi-hal.so的时候出现如下错误,请分析原因 ============================================ 14:46:32 Disallowed PATH tool "python3.6" used: []string{"python3.6", ".repo/repo/repo", "manifest", "-r", "-o", "out/commit_id.xml"} 14:46:32 See https://android.googlesource.com/platform/build/+/master/Changes.md#PATH_Tools for more information. $(shell find kernel-4.19/drivers/net/wireless/rockchip_wlan -name ""*.ko"" -type f | sed -E "s:(kernel-4.19/drivers/net/wireless/rockchip_wlan/?(.*)):\\1\\:/recovery/root/pcba/lib/modules/\\2:" | sed "s://:/:g") was changed, regenerating... 14:46:34 Disallowed PATH tool "python3.6" used: []string{"python3.6", ".repo/repo/repo", "manifest", "-r", "-o", "out/commit_id.xml"} 14:46:34 See https://android.googlesource.com/platform/build/+/master/Changes.md#PATH_Tools for more information. [100% 1/1] initializing build system ... device/rockchip/common/prebuild.mk:2: warning: Generating manifest snapshot at out/commit_id.xml... device/rockchip/common/prebuild.mk:3: warning: You can disable this by removing this and setting BOARD_RECORD_COMMIT_ID := false in BoardConfig.mk "python3.6" is not allowed to be used. See https://android.googlesource.com/platform/build/+/master/Changes.md#PATH_Tools for more information. [ 1% 6/306] including build/make/target/board/Android.mk ... build fstab file with device/rockchip/common/scripts/fstab_tools/fstab.in.... rebuilding dtbo image with device/rockchip/rk3399/rk3399_Android12/dt-overlay.in.... build parameter.txt with device/rockchip/common/scripts/parameter_tools/parameter.in.... [ 32% 98/306] including external/rk_tee_user/v1/Android.mk ... 'building rk_tee_user v1' [ 32% 99/306] including external/rk_tee_user/v2/Android.mk ... 'building rk_tee_user v1' [ 54% 166/306] including hardware/rockchip/audio/Android.mk ... "BUILD_BISTREAM_TEST" [ 57% 175/306] including hardware/rockchip/libhwjpeg/Android.mk ... git-ab4e68f author: liang.huang 2023-03-23 sync sdk from rockcihp [ 75% 232/306] including system/sepolicy/Android.mk ... system/sepolicy/Android.mk:57: warning: BOARD_PLAT_PUBLIC_SEPOLICY_DIR has been deprecated. Use SYSTEM_EXT_PUBLIC_SEPOLICY_DIRS instead. system/sepolicy/Android.mk:62: warning: BOARD_PLAT_PRIVATE_SEPOLICY_DIR has been deprecated. Use SYSTEM_EXT_PRIVATE_SEPOLICY_DIRS instead. [ 99% 305/306] finishing build rules ... packages/apps/Camera2/Android.mk: warning: "Camera2 (app:platform) should not link against libjni_jpegutil (native:ndk:libc++:static)" [100% 306/306] writing build rules ... FAILED: build/make/core/Makefile:503: error: overriding commands for target `out/target/product/rk3399_Android12/obj/PACKAGING/depmod_vendor_stripped_intermediates/skw.ko', previously defined at build/make/core/Makefile:503 14:47:49 ckati failed with: exit status 1
08-26
[2025-09-26T12:19:10.694Z] FAILED: out_odm/target/product/arctic/obj/SHARED_LIBRARIES/librecovery_ui_ext_intermediates/LINKED/librecovery_ui_ext.so [2025-09-26T12:19:10.695Z] /bin/bash -c "prebuilts/clang/host/linux-x86/clang-r450784d/bin/clang++ -nostdlib -Wl,-soname,librecovery_ui_ext.so -Wl,--gc-sections -shared -Wl,--whole-archive out_odm/target/product/arctic/obj/STATIC_LIBRARIES/librecovery_ui_default.recovery_intermediates/librecovery_ui_default.recovery.a -Wl,--no-whole-archive out_odm/target/product/arctic/obj/STATIC_LIBRARIES/ota_metadata_proto_cc.recovery_intermediates/ota_metadata_proto_cc.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libinstall.recovery_intermediates/libinstall.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libotautil.recovery_intermediates/libotautil.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libminui.recovery_intermediates/libminui.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libmiutil.recovery_intermediates/libmiutil.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/librecovery_utils.recovery_intermediates/librecovery_utils.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libc++fs_intermediates/libc++fs.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/librecovery_fastboot.recovery_intermediates/librecovery_fastboot.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libminui.recovery_intermediates/libminui.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/librecovery_utils.recovery_intermediates/librecovery_utils.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libotautil.recovery_intermediates/libotautil.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libsnapshot_nobinder_intermediates/libsnapshot_nobinder.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libfstab.recovery_intermediates/libfstab.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libminadbd_services.recovery_intermediates/libminadbd_services.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libhealthhalutils.recovery_intermediates/libhealthhalutils.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libvintf.recovery_intermediates/libvintf.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libcrypto_utils_intermediates/libcrypto_utils.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libfusesideload.recovery_intermediates/libfusesideload.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/librecovery_ui.recovery_intermediates/librecovery_ui.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libmiutil.recovery_intermediates/libmiutil.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libadbd_services.recovery_intermediates/libadbd_services.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libadbd_core.recovery_intermediates/libadbd_core.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libapp_processes_protos_lite.recovery_intermediates/libapp_processes_protos_lite.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/update_metadata-protos_intermediates/update_metadata-protos.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libdiagnose_usb_intermediates/libdiagnose_usb.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libbrotli_intermediates/libbrotli.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libadb_crypto_static.recovery_intermediates/libadb_crypto_static.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libadb_tls_connection_static.recovery_intermediates/libadb_tls_connection_static.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libc++demangle.recovery_intermediates/libc++demangle.recovery.a out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libclang_rt.ubsan_minimal.recovery_intermediates/libclang_rt.ubsan_minimal.recovery.a prebuilts/clang/host/linux-x86/clang-r450784d/lib64/clang/14.0.6/lib/linux//libclang_rt.builtins-aarch64-android.a -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--build-id=md5 -Wl,--fatal-warnings -Wl,--no-undefined-version -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libgcc_stripped.a -Wl,--exclude-libs,libunwind_llvm.a -Wl,--exclude-libs,libunwind.a -Wl,--icf=safe -fuse-ld=lld -Wl,--hash-style=gnu -Wl,-z,separate-code -Wl,-z,max-page-size=4096 -Wl,--pack-dyn-relocs=android+relr -Wl,--use-android-relr-tags -Wl,--exclude-libs,libclang_rt.ubsan_minimal.a -Wl,--no-undefined -target aarch64-linux-android10000 out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libbase.recovery_intermediates/libbase.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/liblog.recovery_intermediates/liblog.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/librecovery_ui.recovery_intermediates/librecovery_ui.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libcrypto.recovery_intermediates/libcrypto.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libcutils.recovery_intermediates/libcutils.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libext4_utils_intermediates/libext4_utils.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libfs_mgr_intermediates/libfs_mgr.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libutils.recovery_intermediates/libutils.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libz.recovery_intermediates/libz.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libziparchive.recovery_intermediates/libziparchive.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libssl.recovery_intermediates/libssl.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libfusesideload.recovery_intermediates/libfusesideload.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libbootloader_message.recovery_intermediates/libbootloader_message.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libpng.recovery_intermediates/libpng.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/android.hardware.boot@1.0.recovery_intermediates/android.hardware.boot@1.0.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/android.hardware.boot@1.1.recovery_intermediates/android.hardware.boot@1.1.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libbase.recovery_intermediates/libbase.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libbootloader_message.recovery_intermediates/libbootloader_message.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/liblp_intermediates/liblp.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/liblog.recovery_intermediates/liblog.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libprotobuf-cpp-lite.recovery_intermediates/libprotobuf-cpp-lite.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/android.hardware.health@2.0.recovery_intermediates/android.hardware.health@2.0.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libhidlbase.recovery_intermediates/libhidlbase.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libhidl-gen-utils.recovery_intermediates/libhidl-gen-utils.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libselinux.recovery_intermediates/libselinux.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libtinyxml2.recovery_intermediates/libtinyxml2.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libasyncio.recovery_intermediates/libasyncio.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libadbd_auth_intermediates/libadbd_auth.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libmdnssd_intermediates/libmdnssd.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libadbconnection_server.recovery_intermediates/libadbconnection_server.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libc++.recovery_intermediates/libc++.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libc.recovery_intermediates/libc.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libm.recovery_intermediates/libm.recovery.so out_odm/target/product/arctic/obj/SHARED_LIBRARIES/libdl.recovery_intermediates/libdl.recovery.so -o out_odm/target/product/arctic/obj/SHARED_LIBRARIES/librecovery_ui_ext_intermediates/LINKED/librecovery_ui_ext.so" [2025-09-26T12:19:10.695Z] ld.lld: error: undefined symbol: atexit [2025-09-26T12:19:10.695Z] >>> referenced by mdns.cpp:198 (packages/modules/adb/daemon/mdns.cpp:198) [2025-09-26T12:19:10.695Z] >>> mdns.o:(setup_mdns(int)) in archive out_odm/target/product/arctic/obj/STATIC_LIBRARIES/libadbd_services.recovery_intermediates/libadbd_services.recovery.a [2025-09-26T12:19:10.695Z] clang-14: error: linker command failed with exit code 1 (use -v to see invocation)
09-27
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千里马学框架

帮助你了,就请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值