假设我要包含一个具有大量功能的头文件。
#include "1000Functions.h"
Function1(42);
Function2("Hello");
Function1000("geeks!");
但是,我只想使用标题中的一些功能。经过预处理,编译和链接(例如,使用g++)后,我的程序会包含全部1000个函数,还是仅包含我使用的3个函数? 最佳答案
我发现this article很有用。使用objdump -tC ProgramName
可以向您显示不必要的代码,当您的程序加载到内存中时,这些不必要的代码最终被加载到.text中。
我一直在寻找链接时优化,一旦我将这两个标签添加到链接命令中,而不仅仅是-flto
,它便对我有用。
-O2 -flto