卡關筆記 base_rules.mk:72: *** user tag detected on module.. 如何把module正確編譯且產生出來

首先發生了error
編譯到一半就有訊息跳出並停止編譯
它跟我說我用了 user tag 所以STOP…

去看了一看我的 module’s Android.mk
如下

關鍵在 LOCAL_MODULE_TAGS

eng:
我還沒改之前為eng, 而eng表示系統會自動搬入 out/product/xxx/xxx (看你怎麼寫, 像此例是LOCAL_MODULE_CLASS := ETC 所以是system/etc)

user:
如果是 LOCAL_MODULE_TAGS := user 就上面的error message
可能有些地方不能隨意定義成user吧… 害我一開始還跟著error message去試著將module name加入 PRODUCT_PACKAGES定義裡
也沒用, 還是fail

optional:
可以改成 LOCAL_MODULE_TAGS := optional , 但必須說明是否搬入out目錄裡
怎麼說明呢?
去把該module name (此例為test_wifi)加入 PRODUCT_PACKAGES定義裡
可以寫在
1) /android/build/target/product/generic.mk 或附近的mk檔
2) 又或者, 其他可以定義 PRODUCT_PACKAGES += xxxxx 的makedile裡 (.mk檔) 必須看你的codebase什麼地方有PRODUCT_PACKAGES += xxxxx 就接著寫在下面吧

我後來處理的寫法

diff給你看

PRODUCT_PACKAGES宣告

發表迴響