ZHCUAU3J January 2018 – March 2024
“符号隐藏”可阻止符号在输出文件的符号表中被列出。局部化用于防止链接单元中出现名称空间冲突(请参阅节 12.4.16),而“符号隐藏”用于隐藏不应在链接单元外可见的符号。此类符号的名称在目标文件阅读器中仅显示为空字符串或“no name”。链接器通过 --hide 和 --unhide 选项支持符号隐藏。
这些选项的语法为:
--hide='pattern'
--unhide='pattern'
pattern 是一个“glob”(带有可选 ? 或 * 通配符的字符串)。? 用于匹配单个字符。* 用于匹配零个或多个字符。
--hide 选项会隐藏链接名称与 模式相匹配的全局符号。它通过将名称更改为空字符串来隐藏与模式匹配的符号。隐藏的全局符号也会局部化。
--unhide 选项显示(取消隐藏)与 --hide 选项隐藏的模式相匹配的全局符号。--unhide 选项从符号隐藏中排除与模式相匹配的符号,前提是由 --unhide 定义的模式比由 --hide 定义的模式具有更严格的限制。
这些选项具有以下属性:
在映射文件中,这些符号列在“Hidden Symbols”(隐藏符号)标题下。