我有兴趣使用 -Os 编译一些较大的程序。我用来修补/重新编译程序的常规方法是 apt-get source 后跟 dpkg-buildpackage。
我从 dpkg-buildflags 手册页了解到,我可以在配置文件中设置全局标志。如果我附加我想要的标志,这似乎仅适用于某些包。问题是大多数程序都会忽略这些标志并使用 -O2(在某些情况下是 -O3)构建。
有没有办法强制编译器使用 -Os?
答案1
除了修补编译器本身之外,没有办法绝对全局地设置它。没有确定的策略来配置这个东西。该dpkg-buildflags
方法试图在某种程度上统一这一点,但它还很年轻。它应该适用于大多数包,但如果不能,您将必须修补源包(并且可能通知包维护者解决这个问题)。