Ubuntu16+ 無法編譯 Android M0 問題
阿新 • • 發佈:2018-12-09
前段時間組織架構微調了,然後重新調整了專案分配,當部門助理找到我,說有6.0
專案時,我的反應是這樣的:
反覆確認之後,得到的答覆仍舊是 Android 6.0
!好吧,那就 6.0 吧,拉程式碼幹活吧。
不巧,上 8.1 前,在大家長期吐槽伺服器慢的情況下,採購了一臺效能“強悍”的伺服器,買回來上了 Ubuntu 16.04
,在其他人還在猶豫的時候,我就率先切到新伺服器幹活了。
PS: 講真,個人覺得這個新伺服器很normal,2~3個人用還湊活,如果作為整個部門公用的伺服器,那就有點弱了,233333……
沒錯,這個 6.0 的程式碼,也就拉到了這個伺服器上,結果編譯不過!但是程式碼是沒問題的,因為部門助理剛編過的。按常規套路,仔細檢查了編譯日誌,搜 error 時,出現了上千條 libart
在變換了各種姿勢去編譯也沒有過,確定了不是自己的操作問題之後,叫來了老大,老大說碰到過,然後發過來一個 patch,內容如下:
--- a/build/core/clang/HOST_x86_common.mk
+++ b/build/core/clang/HOST_x86_common.mk
@@ -11,7 +11,8 @@ endif
ifeq ($(HOST_OS),linux)
CLANG_CONFIG_x86_LINUX_HOST_EXTRA_ASFLAGS := \
--gcc-toolchain=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG ) \
- --sysroot=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/sysroot
+ --sysroot $($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/sysroot \
+ -B$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/x86_64-linux/bin
CLANG_CONFIG_x86_LINUX_HOST_EXTRA_CFLAGS := \
--gcc-toolchain=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG )
合入這個 patch 之後,編譯就過了!過了!!過了!!!