簡體   English   中英

Android無法在OS X 10.7上構建

[英]Android fails to build on OS X 10.7

我正在嘗試使用GNU gcc 4.7構建android源主分支。 一切正常,直到我更新到Xcode 4.5。 這似乎是與Java相關或與權限相關的問題。 我仔細檢查過,所有目錄都是可寫的,並且javac (1.6.0_37)正常工作。

這是我的配置信息

PLATFORM_VERSION_CODENAME=AOSP
PLATFORM_VERSION=4.1.2.3.4.5.6.7.8.9
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a
HOST_ARCH=x86
HOST_OS=darwin
HOST_OS_EXTRA=Darwin-12.2.0-x86_64-i386-64bit
HOST_BUILD_TYPE=release
BUILD_ID=OPENMASTER
OUT_DIR=out

但是我得到這個錯誤

Install: out/host/darwin-x86/bin/acp
host Java: antlr-runtime (out/host/common/obj/JAVA_LIBRARIES/antlr-runtime_intermediates/classes)
target Java: core (out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes)
host Java: dx (out/host/common/obj/JAVA_LIBRARIES/dx_intermediates/classes)
external/jsr305/ri/src/main/java/javax/annotation/CheckForNull.java:14: error while writing javax.annotation.CheckForNull: could not create parent directories
public @interface CheckForNull {
        ^
1 error
make: *** [out/host/common/obj/JAVA_LIBRARIES/jsr305lib_intermediates/javalib.jar] Error 41
make: *** Waiting for unfinished jobs....
external/antlr/antlr-3.4/runtime/Java/src/main/java/org/antlr/runtime/ANTLRStringStream.java:37: error while writing org.antlr.runtime.ANTLRStringStream: could not create parent directories
public class ANTLRStringStream implements CharStream {
       ^
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
make: *** [out/host/common/obj/JAVA_LIBRARIES/antlr-runtime_intermediates/javalib.jar] Error 41
dalvik/dx/src/com/android/dx/Version.java:22: error while writing com.android.dx.Version: could not create parent directories
public class Version {
       ^
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
make: *** [out/host/common/obj/JAVA_LIBRARIES/dx_intermediates/javalib.jar] Error 41
libcore/luni/src/main/java/java/lang/Object.java:131: error while writing java.lang.Object: could not create parent directories
public class Object {
       ^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
make: *** [out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes-full-debug.jar] Error 41

我遇到了一個非常接近這一問題的問題。

=========================================== PLATFORM_VERSION_CODENAME = REL PLATFORM_VERSION = 4.3 .2.1.000.000 TARGET_PRODUCT =全TARGET_BUILD_VARIANT =主機TARGET_BUILD_TYPE =釋放TARGET_BUILD_APPS = TARGET_ARCH =手臂TARGET_ARCH_VARIANT = ARMv7的-一個TARGET_CPU_VARIANT =通用HOST_ARCH = 86 HOST_OS =達爾文HOST_OS_EXTRA =達爾文-12.4.0-x86_64的-i386-64bit HOST_BUILD_TYPE =釋放BUILD_ID = OPENMASTER OUT_DIR = out ============================================目標Java :電話公用(out / target / common / obj / JAVA_LIBRARIES / telephony-common_intermediates / classes)目標Strip:libLLVM(out / target / product / product / generic / obj / lib / libLLVM.so)target符號:libGLES_trace(out / target) /product/generic/symbols/system/lib/libGLES_trace.so)目標符號:libui(out / target / product / product / generic / symbols / system / lib / libui.so)目標符號:libbinder(out / target / product / generic /symbols/system/lib/libbinder.so)目標條帶:dalvik-vm-unit-tests(out / target / product / generic / obj / EXECUTABLES / dalvik-vm-unit-tests_intermediates / dalvik-vm-unit-tests)目標地帶:libemoji(out / target / product / generic / obj / lib / libemoji.so)目標地帶:libsqlite(out / target / product / generic / obj / lib / lib / libsqlite.so )目標條帶:libsonivox(out / target / product / generic / obj / lib / libsonivox.so)目標條帶:libharfbuzz_ng(out / target / product / generic / obj / lib / libharfbuzz_ng.so)目標條帶:libharfbuzz(out / target / product / generic / obj / lib / libharfbuzz.so)安裝:out / target / product / generic / system / lib / libemoji.so安裝:out / target / product / generic / system / lib / libLLVM.so安裝: out / target / product / generic / system / lib / libsonivox.so安裝:out / target / product / generic / system / lib / libsqlite.so目標包:ApplicationsProvider(out / target / product / generic / obj / APPS / ApplicationsProvider_intermediates /package.apk)目標軟件包:BackupRestoreConfirmation(out / target / product / generic / obj / APPS / BackupRestoreConfirmation_intermediates / package.apk)目標軟件包:BasicDreams(out / target / product / generic / obj / APPS / BasicDreams_intermediates / package.ap k)frameworks / opt / telephony / src / java / com / android / internal / telephony / PhoneFactory.java:130:找不到符號symbol:變量PREFERRED_CDMA_SUBSCRIPTION位置:類android.provider.Settings.Global Settings.Global.PREFERRED_CDMA_SUBSCRIPTION,^注意:某些輸入文件使用或覆蓋不推薦使用的API。 注意:有關詳細信息,請使用-Xlint:deprecation重新編譯。 注意:某些輸入文件使用未經檢查或不安全的操作。 注意:使用-Xlint:unchecked重新編譯以獲取詳細信息。 1個錯誤: * [out / target / common / obj / JAVA_LIBRARIES / telephony-common_intermediates / classes-full-debug.jar]錯誤41:*等待未完成的作業...。

原來是我最初沒有正確按照說明進行操作。 根據android的安裝說明,它位於區分大小寫的文件系統上,但是我已經從普通文件系統復制了過來。 重新運行回購同步后,將其編譯。

如果這聽起來像您的問題,請遵循http://source.android.com/source/initializing.html

hdiutil create -t​​ype SPARSE -fs'區分大小寫的日志HFS +'-大小40g〜/ android.dmg

hdiutil附加〜/ android.dmg.sparseimage -mountpoint / Volumes / android

mv〜/ android-source / Volumes / android

cd /卷/ android / android-源

回購同步

使-j4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM