2016-02-29 48 views
0

如果libXYZ.so未直接鏈接到目標,如何將共享庫(讓它爲libXYZ.so)作爲LOCAL_MODULE目標的依賴項。如何添加對目標的依賴關係

如何確保構建系統首先建立依賴關係(libXYZ.so),然後從Android.mk

這在我的構建,因爲需要執行爲LOCAL_MODULE命令,依賴(libXYZ.so)它自身不使用,但一使用不同名稱的符號鏈接。 (libABC.so -> libXYZ.so)。作爲LOCAL_POST_INSTALL_CMD的一部分,創建共享庫後生成符號鏈接。

回答

0

您可以將庫添加到列表的先決條件:

LOCAL_MODULE: libXYZ.so 

但你必須相信,建立圖書館還建立符號鏈接的規則。將符號鏈接本身作爲目標會更安全,使符號鏈接成爲模塊的先決條件,並使該庫成爲符號鏈接的先決條件。

+0

我有multilib構建和符號鏈接是使用後安裝命令創建的。正如你所說,沒有保證鏈接將被創建。我如何創建一個創建符號鏈接的目標。我無法弄清楚如何在32位和multilib版本上工作。 – kanna

+0

您是否知道如何創建符號鏈接*但不包含* Make(例如'ln -d libXYZ.so libABC.so')?你是否希望編寫一個可以在多個操作系統下工作的makefile? – Beta