知方号

知方号

学习AOSP安卓系统源代码,需要什么样的电脑?不同配置的电脑,其编译时间有多大差距?<安卓系统多久更新一个版本的>

学习AOSP安卓系统源代码,需要什么样的电脑?不同配置的电脑,其编译时间有多大差距?

文章目录 1. 卷首语2.中低配置(6000元价位)2.1 (2023年7月)AMD Ryzen 5 2600X 6核心12线程 32GB 1TB固态2.1.1 系统配置2.1.2 编译配置2.1.3 编译时间 (03:23:40 (hh:mm:ss))2.1.4 编译android-13 (03:13:06 (hh:mm:ss)) 3. 中高配置(10000元价位)3.1 AMD 3900X 32GB 1TB固态3.1.1 配置3.1.2 编译3.1.3编译时间(01:21:53 (hh:mm:ss)) 3.2 i7-12700 32GB 2TB 固态3.2.1 2023年3月 (Intel i7-12700)3.2.2 编译 65分钟 4. 高端及其他配置4.1 戴尔(DELL) PowerEdge R740 32核64线程 64G内存4.1.1 核心配置4.1.2 编译配置4.1.3 编译时间 (约40分钟) 4.2 E5 2673v3 X5 2673 32G 二手料 (02:32:43)4.2.1 配置4.2.2 编译时间 4.3 DELL R630 E5 2600 v4 36核72线程 128GB内存(二手2000+, 创业推荐)4.3.1 配置4.3.2 编译时间(01:12:30 (hh:mm:ss) 5. 结束语

1. 卷首语

俗话说得好,工欲善其事必先利其器!有一台自己的编译服务器是每个学习AOSP 安卓系统源代码人的梦想,然而需要什么样的配置呢?下面是我当前在用的3个平台的核心配置,可供大家参考。

因为学习安卓系统源代码,就需要编译和调试系统源码,所以需要一台性能强劲的电脑,否则将在等待上浪费不少时间个人推荐系统至少是6核心12线程以上,内存至少32G,考虑价格因素搭配使用固态和机械硬盘

另外推荐个人专栏文章:

[Android 11]使用Android Studio调试系统应用之Settings移植(一):编译服务器的配置、AOSP源码的下载、编译、运行 2.中低配置(6000元价位) 2.1 (2023年7月)AMD Ryzen 5 2600X 6核心12线程 32GB 1TB固态 此套配置,之前是为了兼顾玩点小游戏,2023-07组装,CPU和显卡记得都是千元左右价位,编译时间花了3小时23分钟。可改换AMD(锐龙7 5800X 8核16线程)2569.00元,或锐龙9(12核心 24线程),获取更高性能因集显会和CPU抢内存资源,所以不建议使用集显,若不玩游戏,可选配500元以下低端显卡 2.1.1 系统配置 CPU: AMD Ryzen 5 2600X 6核心12线程内存:金士顿 (Kingston FURY 16GB DDR4 3200) x2条主板:微星B450M MORTAR迫击炮显卡:蓝宝石(Sapphire)RX580 2048SP 8G D5 白金版 OC 1306MHz/8000MHz 8GB/256bit硬盘:1TB 固态硬盘 2.1.2 编译配置 szhou@bcsrv03:~/workspace/aosp$ source build/envsetup.shszhou@bcsrv03:~/workspace/aosp$ lunch aosp_x86_64-eng============================================PLATFORM_VERSION_CODENAME=RELPLATFORM_VERSION=11TARGET_PRODUCT=aosp_x86_64TARGET_BUILD_VARIANT=engTARGET_BUILD_TYPE=releaseTARGET_ARCH=x86_64TARGET_ARCH_VARIANT=x86_64TARGET_2ND_ARCH=x86TARGET_2ND_ARCH_VARIANT=x86_64HOST_ARCH=x86_64HOST_2ND_ARCH=x86HOST_OS=linuxHOST_OS_EXTRA=Linux-5.11.0-37-generic-x86_64-Ubuntu-20.04.3-LTSHOST_CROSS_OS=windowsHOST_CROSS_ARCH=x86HOST_CROSS_2ND_ARCH=x86_64HOST_BUILD_TYPE=releaseBUILD_ID=RQ3A.210705.001OUT_DIR=outPRODUCT_SOONG_NAMESPACES=device/generic/goldfish device/generic/goldfish-opengl hardware/google/camera hardware/google/camera/devices/EmulatedCamera device/generic/goldfish device/generic/goldfish-opengl============================================szhou@bcsrv03:~/workspace/aosp$ make -j12 2.1.3 编译时间 (03:23:40 (hh:mm:ss)) > [ 99% 121734/121736] Target super fs image for debug: out/target/product/generic> 2023-10-02 00:01:49 - build_super_image.py - INFO : Building super image from> info dict...> 2023-10-02 00:01:49 - common.py - INFO : Running: "lpmake --metadata-size 6> 5536 --super-name super --metadata-slots 2 --device super:3229614080 --group emu> lator_dynamic_partitions:3221225472 --partition system:readonly:1695207424:emula> tor_dynamic_partitions --image system=out/target/product/generic_x86_64/system.i> mg --partition vendor:readonly:65351680:emulator_dynamic_partitions --image vend> or=out/target/product/generic_x86_64/vendor.img --output out/target/product/gene> ric_x86_64/super.img"> 2023-10-02 00:01:51 - common.py - INFO : lpmake I 10-02 00:01:49 820545 82054> 5 builder.cpp:1031] [liblp]Partition system will resize from 0 bytes to 16952074> 24 bytes> lpmake I 10-02 00:01:49 820545 820545 builder.cpp:1031] [liblp]Partition vendor > will resize from 0 bytes to 65351680 bytes> Invalid sparse file format at header magic> Invalid sparse file format at header magic> 2023-10-02 00:01:51 - build_super_image.py - INFO : Done writing image out/ta> rget/product/generic_x86_64/super.img> [100% 121736/121736] Create system-qemu.img now> removing out/target/product/generic_x86_64/system-qemu.img.qcow2> out/host/linux-x86/bin/sgdisk --clear out/target/product/generic_x86_64/system-q> emu.img>> #### build completed successfully (03:23:40 (hh:mm:ss)) ####>> szhou@bcsrv03:~/workspace/aosp$

2.1.4 编译android-13 (03:13:06 (hh:mm:ss)) [ 99% 154474/154478] Target super fs image for debug: out/target/product/emulator_x86_64/super.img2023-12-24 05:08:00 - build_super_image.py - INFO : Building super image from info dict...2023-12-24 05:08:00 - common.py - INFO : Running: "/home/szhou/works/aosp/aosp/out/host/linux-x86/bin/lpmake --metadata-size 65536 --super-name super --metadata-slots 2 --device super:8598323200 --group emulator_dynamic_partitions:8589934592 --partition system:readonly:1038884864:emulator_dynamic_partitions --image system=out/target/product/emulator_x86_64/system.img --partition system_dlkm:readonly:348160:emulator_dynamic_partitions --image system_dlkm=out/target/product/emulator_x86_64/system_dlkm.img --partition system_ext:readonly:154165248:emulator_dynamic_partitions --image system_ext=out/target/product/emulator_x86_64/system_ext.img --partition product:readonly:330076160:emulator_dynamic_partitions --image product=out/target/product/emulator_x86_64/product.img --partition vendor:readonly:167936000:emulator_dynamic_partitions --image vendor=out/target/product/emulator_x86_64/vendor.img --output out/target/product/emulator_x86_64/super.img"2023-12-24 05:08:01 - build_super_image.py - INFO : Done writing image out/target/product/emulator_x86_64/super.img[100% 154478/154478] Create system-qemu.img nowremoving out/target/product/emulator_x86_64/system-qemu.img.qcow2out/host/linux-x86/bin/sgdisk --clear out/target/product/emulator_x86_64/system-qemu.img#### build completed successfully (03:13:06 (hh:mm:ss)) ####szhou@bc-R01:~/works/aosp/aosp$ 3. 中高配置(10000元价位) AMD 3900X(老电脑) 此套配置编译时间越90分钟,虽然配置了固态,但因固态空间较小,一般用于代码分析;编译部分依旧使用机械硬盘Intel i7 12700为12核心20线程,为2023年3月份新配置的电脑,对于个人使用,本人已比较满意。可能部分人会去捡二手的Intel志强处理器,有功夫折腾的也可以,个人没研究这一块。 3.1 AMD 3900X 32GB 1TB固态 3.1.1 配置 CPU: AMD 锐龙9 3900X 处理器 (r9)7nm 12核24线程 3.8GHz 105W AM4接口 盒装CPU 3499.00 元内存:金士顿 (Kingston) FURY 32GB DDR4 3200 929.00 元SSD:西部数据(Western Digital)1T SSD固态硬盘 M.2接口 (NVMe协议)WD Blue SN550 709.00 元 3.1.2 编译 szhou@bcsrv01:~/aosp$ source build/envsetup.shszhou@bcsrv01:~/aosp$ lunch aosp_x86_64-engszhou@bcsrv01:~/aosp$ make -j24 3.1.3编译时间(01:21:53 (hh:mm:ss)) > [ 99% 1338/1340] Target super fs image for debug: out/target/product/generic_x86_64/super.img> 2023-08-20 09:07:19 - build_super_image.py - INFO : Building super image from info dict...> 2023-08-20 09:07:19 - common.py - INFO : Running: "lpmake --metadata-size 65536 --super-name super --metadata-slots 2 --device super:3229614080 --group emulator_dynamic_partitions:3221225472 --partition system:readonly:16952> 07424:emulator_dynamic_partitions --image system=out/target/product/generic_x86_64/system.img --partition vendor:readonly:65351680:emulator_dynamic_partitions --image vendor=out/target/product/generic_x86_64/vendor.img --output o> ut/target/product/generic_x86_64/super.img"> 2023-08-20 09:07:24 - common.py - INFO : lpmake I 08-20 09:07:20 35360 35360 builder.cpp:1031] [liblp]Partition system will resize from 0 bytes to 1695207424 bytes> lpmake I 08-20 09:07:20 35360 35360 builder.cpp:1031] [liblp]Partition vendor will resize from 0 bytes to 65351680 bytes> Invalid sparse file format at header magic> Invalid sparse file format at header magic> 2023-08-20 09:07:24 - build_super_image.py - INFO : Done writing image out/target/product/generic_x86_64/super.img> [100% 1340/1340] Create system-qemu.img now> removing out/target/product/generic_x86_64/system-qemu.img.qcow2> out/host/linux-x86/bin/sgdisk --clear out/target/product/generic_x86_64/system-qemu.img>> #### build completed successfully (01:21:53 (hh:mm:ss)) ####>> szhou@bcsrv01:~/aosp$ 3.2 i7-12700 32GB 2TB 固态 3.2.1 2023年3月 (Intel i7-12700) CPU、内存、固态硬盘为个人推荐配置2TB固态硬盘已基本足够用,飞一般的感觉 3.2.2 编译 65分钟 4. 高端及其他配置

此类一般是公司里使用,如自己组建团队,可考虑购买。

4.1 戴尔(DELL) PowerEdge R740 32核64线程 64G内存 4.1.1 核心配置 戴尔(DELL) PowerEdge R740 32核64线程 64G内存/3*4TB CPU: 32核心内存: 64G硬盘: RAID机械硬盘

4.1.2 编译配置 szhou@bcsrv01:~/aosp$ source build/envsetup.shszhou@bcsrv01:~/aosp$ lunch aosp_x86_64-engszhou@bcsrv01:~/aosp$ make -j32 4.1.3 编译时间 (约40分钟) > 2023-08-19 20:07:37 - build_super_image.py - INFO : Done writing image out/target/product/generic_x86_64/super.img> [100% 64385/64385] Create system-qemu.img now> removing out/target/product/generic_x86_64/system-qemu.img.qcow2> out/host/linux-x86/bin/sgdisk --clear out/target/product/generic_x86_64/system-qemu.img>> #### build completed successfully (41:58 (mm:ss)) ####>> szhou@Android:~/aosp_works/aosp$ 4.2 E5 2673v3 X5 2673 32G 二手料 (02:32:43) 4.2.1 配置 CPU: intel E5 2673v3 (12cores, 24 threads.) Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHzDDR: 32G/DDR3BORAD: JY x99 --------------------- JD shopping, total: 792 RMBSATA solid disk:1 TB 4.2.2 编译时间 void kotlinx.coroutines.scheduling.WorkQueue.offloadAllWork$kotlinx_coroutines_core(kotlinx.coroutines.scheduling.GlobalQueue) Type information in locals-table is inconsistent. Cannot constrain type: BOTTOM (empty) for value: v15 by constraint INT.Info: Some warnings are typically a sign of using an outdated Java toolchain. To fix, recompile the source with an updated toolchain.[100% 137254/137254] Target vbmeta image: out/target/product/generic_x86_64/vbmeta.img#### build completed successfully (02:32:43 (hh:mm:ss)) #### 4.3 DELL R630 E5 2600 v4 36核72线程 128GB内存(二手2000+, 创业推荐) 遇到此机纯属意外,想到价格如此便宜,大致2000左右,加上各种硬盘配置大致不超过3000虽然使用机械硬盘,但性能却是相当不错,尤其编译Android 13 AOSP本身较为耗时除了体积大,是目前楼上配置中最具性价比的设备 4.3.1 配置

CPU : Intel® Xeon® CPU E5-2686 v4 @ 2.30GHz 内存 : 128GB

4.3.2 编译时间(01:12:30 (hh:mm:ss) 对比intel i5 第13代,32G内存,固态硬盘,同样的源码,大约3小时 编译:sdk_phone_x86_64-userdebug[ 99% 154474/154478] Target super fs image for debug: out/target/product/emulator_x86_64/super.img2023-12-20 13:27:46 - build_super_image.py - INFO : Building super image from info dict...2023-12-20 13:27:46 - common.py - INFO : Running: "/home/szhou/works/aosp/out/host/linux-x86/bin/lpmake --metadata-size 65536 --super-name super --metadata-slots 2 --device super:8598323200 --group emulator_dynamic_partitions:8589934592 --partition system:readonly:1038888960:emulator_dynamic_partitions --image system=out/target/product/emulator_x86_64/system.img --partition system_dlkm:readonly:348160:emulator_dynamic_partitions --image system_dlkm=out/target/product/emulator_x86_64/system_dlkm.img --partition system_ext:readonly:154165248:emulator_dynamic_partitions --image system_ext=out/target/product/emulator_x86_64/system_ext.img --partition product:readonly:330076160:emulator_dynamic_partitions --image product=out/target/product/emulator_x86_64/product.img --partition vendor:readonly:167936000:emulator_dynamic_partitions --image vendor=out/target/product/emulator_x86_64/vendor.img --output out/target/product/emulator_x86_64/super.img"2023-12-20 13:27:49 - build_super_image.py - INFO : Done writing image out/target/product/emulator_x86_64/super.img[100% 154478/154478] Create system-qemu.img nowremoving out/target/product/emulator_x86_64/system-qemu.img.qcow2out/host/linux-x86/bin/sgdisk --clear out/target/product/emulator_x86_64/system-qemu.img#### build completed successfully (01:12:30 (hh:mm:ss)) ####szhou@oa-R630:~/works/aosp$ 5. 结束语

工欲善其事,必先利其器~

欢迎留言,私信~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。