【发布时间】:2016-12-28 23:51:39
【问题描述】:
我想通过构建最新的 gcc 6.3.0 来研究我的另一个问题 (gcc: Strip unused functions) 的方法。
https://gcc.gnu.org/install/configure.html 和 https://gcc.gnu.org/onlinedocs/libstdc++/manual/configure.html 有一些选项我想尝试,但不明白它们的意思。
具体来说,这些是我想尝试的标志:
-
--disable-libstdcxx-verbose:我很少使用异常,所以对它的工作原理不是很熟悉。我从未见过它之前提到的“冗长消息”。 -
--enable-linker-build-id和--enable-gnu-unique-object:根本不明白这些解释要说什么。究竟有什么好处? -
--enable-cxx-flags="-ffunction-sections -fstrict-aliasing -fno-exceptions":如果我在 libstdc++ 中使用-fno-exceptions,那是不是意味着如果我使用 libstdc++ 就不会出现异常?使用了-ffunction-sections,但在哪里放置-Wl,-gc-sections?
虽然我一直用--enable-lto,但是用ld.bfd,跟大名鼎鼎的gold linker比起来好像没什么用。
如果您认为我应该尝试更多标志,请告诉我!
【问题讨论】:
-
不清楚且与两种不同的编程语言 C 或 C++ 中的任何一种都无关。