2013-05-18 234 views
0

說模塊m_a中的函數f_a調用模塊m_b中的另一個函數f_b。這是跨模塊m_a的唯一參考。現在,我想讓模塊m_a自成一體,即消除對其他模塊的引用。但是,模塊m_b的尺寸非常大。 (在這種情況下,它包含快速/準確和單/雙執行的所有數學函數)。有沒有辦法只使用LLVM C++ API將f_b函數添加到模塊m_a?或者我必須使用鏈接器API並將整個模塊m_b合併到m_a從不同模塊導入功能

回答

1

使用文本編輯器並將該函數剪切到目標模塊。如果鏈接整個m_b,鏈接器仍應能夠檢測到大部分未使用並在創建最終可執行文件時將其丟棄。你試圖解決什麼問題?

1

一般而言,您需要鏈接器,模塊b中的函數可以使用僅在那裏聲明的變量以及其他函數,您應該檢查代碼以便能夠爲通用函數執行該操作。鏈接器將是解決方案,可以在任何情況下工作。