3
我用靜態鏈接Qt,鏈接器或其他工具可以避免將未使用的二進制代碼(從Qt庫)添加到最終的可執行文件中嗎?我不認爲我使用了全部10 MB的Qt庫代碼。鏈接後最小的可執行文件大小
我用靜態鏈接Qt,鏈接器或其他工具可以避免將未使用的二進制代碼(從Qt庫)添加到最終的可執行文件中嗎?我不認爲我使用了全部10 MB的Qt庫代碼。鏈接後最小的可執行文件大小
如果你在某個時候自己編譯Qt庫,並且你正在使用g ++,你應該嘗試使用Link Time Optimisation (LTO)選項。 您可以通過將-flto添加到所有g ++調用中來完成此操作。這可以讓g ++將所謂的GIMPLE代碼添加到對應於源代碼的目標文件中(因此它不會被完全編譯)。在鏈接步驟中,您應該添加-fwhole-program或-fuse-linker-plugin。然後gcc讀取Gimple代碼,並將整個程序進行優化,因此它應該能夠擺脫任何未使用的代碼。但我不能爲你保證這件作品。
謝謝!我會盡力回覆。 – pavelkolodin