Android环境搭建

An

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-9.0.0_r12
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-9.0.0_r48
build/make/core/product_config.mk:292: warning: "tom INTERNAL_PRODUCT device/generic/uml/uml.mk"
build/make/core/product_config.mk:293: warning: "tom 11 

$(warning "tom INTERNAL_PRODUCT $(INTERNAL_PRODUCT)")                           
$(warning "tom 11 $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_BOOT_JARS) ") 
fangwei@S108-CCS2-01:/workspace1/fangwei/imx8-CSS$ lunch 33
build/make/core/product_config.mk:271: warning: "tom INTERNAL_PRODUCT device/fsl/imx8q/mek_8q/mek_8q.mk"
build/make/core/product_config.mk:272: warning: "tom PRODUCT_BOOT_JARS core-oj core-libart conscrypt okhttp bouncycastle apache-xml ext framework telephony-common voip-common ims-common android.hidl.base-V1.0-java android.hidl.manager-V1.0-java framework-oahl-backward-compatibility android.test.base autosdk"
$(warning "tom PRODUCT_BOOT_JARS $(PRODUCT_BOOT_JARS)")
device/fsl/imx8q/ProductConfigCommon.mk:65: warning: "tom PRODUCT_BOOT_JARS @inherit:build/target/product/core_64_bit.mk @inherit:build/target/product/languages_full.mk @inherit:build/target/product/generic.mk @inherit:frameworks/base/data/sounds/AllAudio.mk autosdk"

build/target/product/core_base.mk:66: warning: "tom PRODUCT_BOOT_JARS @inherit:build/target/product/core_minimal.mk"

build/target/product/core_minimal.mk:122: warning: "tom PRODUCT_BOOT_JARS core-oj core-libart conscrypt okhttp bouncycastle apache-xml ext framework telephony-common voip-common ims-common android.hidl.base-V1.0-java android.hidl.manager-V1.0-java"

build/make/core/product_config.mk:271: warning: "tom INTERNAL_PRODUCT device/fsl/imx8q/mek_8q/mek_8q.mk"

build/make/core/product_config.mk:272: warning: "tom PRODUCT_BOOT_JARS core-oj core-libart conscrypt okhttp bouncycastle apache-xml ext framework telephony-common voip-common ims-common android.hidl.base-V1.0-java android.hidl.manager-V1.0-java framework-oahl-backward-compatibility android.test.base autosdk"

build/make/core/product_config.mk:273: warning: "tom PRODUCT_BOOT_JARS core-oj core-libart conscrypt okhttp bouncycastle apache-xml ext framework telephony-common voip-common ims-common android.hidl.base-V1.0-java android.hidl.manager-V1.0-java framework-oahl-backward-compatibility android.test.base autosdk"

第1行就是指,PRODUCT_BOOT_JARS,在下面文件中:

build/target/product/core_64_bit.mk
build/target/product/languages_full.mk
build/target/product/generic.mk
frameworks/base/data/sounds/AllAudio.mk
autosdk

device/generic/uml/AndroidProducts.mk:19: warning: "tom PRODUCT_BOOT_JARS "
device/generic/uml/uml.mk:31: warning: "tom PRODUCT_BOOT_JARS @inherit:build/target/product/core_64_bit.mk @inherit:build/target/product/embedded.mk":


PRODUCT_BOOT_JARS

在make/target/product/core_minimal.mk中

PRODUCT_BOOT_JARS := \                                                             
    $(TARGET_CORE_JARS) \                                                          
    ext \                                                                          
    framework \                                                                    
    telephony-common \                                                             
    voip-common \                                                                  
    ims-common \                                                                   
    android.hidl.base-V1.0-java \                                                  
    android.hidl.manager-V1.0-java 

错误日志

  0% 6/4216] tom target profman: out/target/product/uml/dex_bootjars/system/framework/boot.prof
FAILED: out/target/product/uml/dex_bootjars/system/framework/boot.prof 
/bin/bash -c "(echo \"tom target profman 1: \" ) && (echo \"tom target profman 2: \" ) && (echo \"tom target profman 3: \" ) && (echo \"tom DEXPREOPT_BOOT_JARS_MODULES: \" ) && (mkdir -p out/target/product/uml/dex_bootjars/system/framework/ ) && (ANDROID_LOG_TAGS=\"*:e\" out/host/linux-x86/bin/profman 	    --create-profile-from=frameworks/base/config/boot-image-profile.txt 		 		 		--reference-profile-file=out/target/product/uml/dex_bootjars/system/framework/boot.prof )"
tom target profman 1: 
tom target profman 2: 
tom target profman 3: 
tom DEXPREOPT_BOOT_JARS_MODULES: 
profman E 09-10 12:14:15 37144 37144 profman.cc:78] APK files must be specified
profman E 09-10 12:14:15 37144 37144 profman.cc:78] Command: out/host/linux-x86/bin/profman --create-profile-from=frameworks/base/config/boot-image-profile.txt --reference-profile-file=out/target/product/uml/dex_bootjars/system/framework/boot.prof
profman E 09-10 12:14:15 37144 37144 profman.cc:78] Usage: profman [options]...
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --dump-only: dumps the content of the specified profile files
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       to standard output (default) in a human readable form.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --dump-output-to-fd=<number>: redirects --dump-only output to a file descriptor.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --dump-classes-and-methods: dumps a sorted list of classes and methods that are
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       in the specified profile file to standard output (default) in a human
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       readable form. The output is valid input for --create-profile-from
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --profile-file=<filename>: specify profiler output file to use for compilation.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       Can be specified multiple time, in which case the data from the different
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       profiles will be aggregated.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --profile-file-fd=<number>: same as --profile-file but accepts a file descriptor.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       Cannot be used together with --profile-file.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --reference-profile-file=<filename>: specify a reference profile.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       The data in this file will be compared with the data obtained by merging
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       all the files specified with --profile-file or --profile-file-fd.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       If the exit code is EXIT_COMPILE then all --profile-file will be merged into
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       --reference-profile-file. 
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --reference-profile-file-fd=<number>: same as --reference-profile-file but
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       accepts a file descriptor. Cannot be used together with
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       --reference-profile-file.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --generate-test-profile=<filename>: generates a random profile file for testing.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --generate-test-profile-num-dex=<number>: number of dex files that should be
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       included in the generated profile. Defaults to 20.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --generate-test-profile-method-percentage=<number>: the percentage from the maximum
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       number of methods that should be generated. Defaults to 5.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --generate-test-profile-class-percentage=<number>: the percentage from the maximum
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       number of classes that should be generated. Defaults to 5.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --generate-test-profile-seed=<number>: seed for random number generator used when
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       generating random test profiles. Defaults to using NanoTime.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --create-profile-from=<filename>: creates a profile from a list of classes and
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       methods.
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --dex-location=<string>: location string to use with corresponding
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       apk-fd to find dex files
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --apk-fd=<number>: file descriptor containing an open APK to
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       search for dex files
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --apk-=<filename>: an APK to search for dex files
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --skip-apk-verification: do not attempt to verify APKs
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --generate-boot-image-profile: Generate a boot image profile based on input
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       profiles. Requires passing in dex files to inspect properties of classes.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --boot-image-class-threshold=<value>: specify minimum number of class occurrences
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       to include a class in the boot image profile. Default is 10.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --boot-image-clean-class-threshold=<value>: specify minimum number of clean class
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       occurrences to include a class in the boot image profile. A clean class is a
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       class that doesn't have any static fields or native methods and is likely to
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       remain clean in the image. Default is 3.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --boot-image-sampled-method-threshold=<value>: minimum number of profiles a
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       non-hot method needs to be in order to be hot in the output profile. The
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       default is max int.
profman E 09-10 12:14:15 37144 37144 profman.cc:78]   --copy-and-update-profile-key: if present, profman will copy the profile from
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       the file passed with --profile-fd(file) to the profile passed with
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       --reference-profile-fd(file) and update at the same time the profile-key
profman E 09-10 12:14:15 37144 37144 profman.cc:78]       of entries corresponding to the apks passed with --apk(-fd).
profman E 09-10 12:14:15 37144 37144 profman.cc:78] 
[  0% 25/4216] //bionic/tools/versioner/src:versioner clang++ DeclarationDatabase.cpp [linux_glibc]
ninja: build stopped: subcommand failed.
12:14:31 ninja failed with: exit status 1

参考:

Android9-版本
Android 镜像使用帮助
Android源码下载-编译

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要搭建Android开发环境,您需要以下几个步骤: 1. 安装JDK(Java Development Kit):Android开发需要Java开发环境,您可以从Oracle官网下载适合您操作系统的JDK版本,然后按照安装向导进行安装。 2. 安装Android Studio:Android Studio是官方推荐的Android开发集成开发环境(IDE),您可以从官网下载最新版本的Android Studio,并按照安装向导进行安装。 3. 安装Android SDK:Android Studio安装完成后,会自带Android SDK,但您可能需要手动更新或添加更多的SDK组件。打开Android Studio,点击“Welcome to Android Studio”界面下方的“Configure”按钮,选择“SDK Manager”。在SDK Manager中,您可以选择要安装的Android版本和其他组件。 4. 配置虚拟设备(可选):虚拟设备允许您在模拟的Android环境中运行和测试应用程序。在SDK Manager中,选择“AVD Manager”来创建和管理虚拟设备。 5. 创建项目:打开Android Studio,点击“Create New Project”来创建一个新的Android项目。根据向导提供的选项设置项目名称、包名、最低支持的Android版本等。 6. 开始开发:一旦项目创建完成,您就可以开始进行Android应用程序的开发了。Android Studio提供了强大的开发工具,包括代码编辑器、布局编辑器、调试器等。 这些步骤可以帮助您搭建Android开发环境,让您开始进行Android应用程序的开发。如有任何问题,请随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值