2010-01-27 43 views

回答

2

代碼優化主要發生在編譯時。所以如果你想優化你的靜態庫,你需要在構建庫的時候這樣做。

有一些優化可以發生在鏈接時(雖然我不確定是否GNU鏈接器實現它們)。但他們額外優化,所以即使你想使用它們,你仍然想編譯時間優化。

1

如果要優化庫中的代碼,則必須在編譯庫時提供優化標誌,而不是在鏈接時提供優化標誌。

+0

一些gnu文檔建議你也可以在鏈接時獲得優化,這就是讓我困惑的問題 – ldog 2010-01-27 19:07:58

+0

@gmatt鏈接器可能能夠執行一些非常專業化的優化,但主要的(像循環展開之類的)需要在編譯時執行。 – 2010-01-27 19:22:39

相關問題