0
我有一個使用g ++版本2.96構建的庫文件。 lib的源代碼不可用,也沒有原始開發人員的支持。如何將g ++ 2.96的lib版本翻譯成新的BFD格式?
我想它採用了最新的G ++版本(4.x的說)我的應用程序聯繫起來。據我瞭解,自gcc veriosn 3.3開始,名稱修改方案已發生變化。這就是爲什麼新的鏈接器不能識別舊的lib文件中的符號。
我已經做了一些關於網絡的研究,並研究了像objcopy,objdump,C++ filt和nm等工具,並嘗試手動查找和取消lib文件中的符號,但無濟於事。
那麼,有沒有一種方式(或工具),以改變我的老的二進制庫文件,以新名稱重整方案,所以我可以使用新的編譯器鏈接嗎?
好約翻譯成稍微舊版本如gcc 3.4是什麼?那也不可能? –
3.4與4.x兼容,但即使對於3.3或其他版本,也不可能在不兼容的ABI之間進行轉換。不可能。放棄。 –
感謝您的及時回覆。只是好奇,如果它不是一個C++庫,而只是一個普通的C庫,你的答案會是相同的。它仍然不可能嗎? –