我正嘗試構建一個啓用了調試符號的C++軟件(-g)。問題是,額外的調試符號作出這樣大的,最後的鏈接步驟失敗,鏈接器無法讀取符號:格式不正確的存檔
../../lib/libutil.a: could not read symbols: Malformed archive
(至少我認爲它是失敗的,因爲它的大小,這略微超過6 GB磁盤上所包含的庫)
我環顧四周,發現提示說可能有4 GB的靜態庫的最大大小。不知道這是否適用於我的系統,這是一個64位的CentOS:
$ UNAME -a Linux主機2.6.32-431.el6.x86_64#1 SMP週五11月22日3時15分09秒UTC 2013 x86_64的x86_64的x86_64 GNU/Linux
我正在使用g ++(GCC)4.8.2編譯器,而binutils版本是GNU ld版本2.20.51.0.2-5.36.el6。
如果確實存在4GB的最大限制,那麼歸檔工具或鏈接器可以處理我的選項,而不用過多地使用構建系統的內部過程(這是自動工具)?