有人知道如何在編譯AOSP(主)時完全禁用插孔嗎?在Android編譯中禁用JACK
我一直有問題,插孔,所以我(編譯的CyanogenMod時)在BoardConfig.mk只是一直把它關掉,加入ANDROID_COMPILE_WITH_JACK := false
。 我現在正在編譯aosp,它似乎忽略了這個命令。
注意:我並非真的試圖解決任何插孔相關的問題,我試圖關閉它。
有人知道如何在編譯AOSP(主)時完全禁用插孔嗎?在Android編譯中禁用JACK
我一直有問題,插孔,所以我(編譯的CyanogenMod時)在BoardConfig.mk只是一直把它關掉,加入ANDROID_COMPILE_WITH_JACK := false
。 我現在正在編譯aosp,它似乎忽略了這個命令。
注意:我並非真的試圖解決任何插孔相關的問題,我試圖關閉它。
我會推薦使用AOSP標籤來構建而不是主分支。例如,最新發布的棉花糖是android-6.0.1_r43標籤。
那麼讓我們來看看clear_vars.mk負責默認值: https://android.googlesource.com/platform/build/+/android-6.0.1_r43/core/clear_vars.mk#110
LOCAL_JACK_ENABLED:= $(DEFAULT_JACK_ENABLED)# ''(即禁用),殘疾人,完全,增量
因此,您必須重寫LOCAL_JACK_ENABLED
Android.mk中的每個模塊或使用DEFAULT_JACK_ENABLED
變量定義全局默認值。
P.S.最好在Google網上論壇上提出這樣的問題:https://groups.google.com/forum/#!forum/android-building
您可以在不更改任何代碼的情況下禁用JACK。
make ANDROID_COMPILE_WITH_JACK:=false
只是在製作整個Android項目時做。
神奇的是在build/make/combo/javac.mk
:
ifndef ANDROID_COMPILE_WITH_JACK
# Defines if compilation with jack is enabled by default.
ANDROID_COMPILE_WITH_JACK := true
endif
而且build/make/core/config.mk
:
ifeq ($(ANDROID_COMPILE_WITH_JACK),true)
DEFAULT_JACK_ENABLED:=full
else
DEFAULT_JACK_ENABLED:=
endif
而且build/make/core/clear_vars.mk
:
LOCAL_JACK_ENABLED:=DEFAULT_JACK_ENABLED
這也充分說明,爲什麼本地模塊在你的修改是徒勞的。