我們正在使用第三方靜態庫,比如說用於android開發的A.a
。我們將它作爲共享庫鏈接,並且它在一個應用程序中正常工作,但是當使用B.so
來構建另一個C.so
時,A.a
中的某些符號找不到。我們已經使用-Wl,--export-dynamic
和-Wl,--whole-archive
來構建B.so
。我們使用nm
來檢查這些符號,它存在但列表爲「t」
而不是「T」
,這意味着它是本地符號而不是外部符號。在som調查之後,接縫A.a
與-fvisibility=hidden
一起構建。有沒有什麼辦法可以覆蓋-fvisibility =隱藏鏈接時間?
但由於某些原因,我們很難立即獲得新的構建庫,因此我們需要一些解決方法。有沒有辦法將這些符號導出爲全局符號,即使它已經在B.so
鏈接時使用-fvisibility=hidden
構建。