gpt4 book ai didi

c++ - g++命令中 ".map"文件有什么用?

转载 作者:太空宇宙 更新时间:2023-11-04 11:13:18 25 4
gpt4 key购买 nike

我正在构建一个 RPM,在构建过程中我发现以下命令用于构建 RPM 的一个共享对象。

g++ /*some compiler options*/ -O1 -Wl,--version-script abc.map -L<some paths> and the remaining command.

我不明白命令中“--version-script”选项和“abc.map”文件的用途。它能做什么?以下是“abc.map”文件的内容。

URE_1{
global:
_ZTI*; _ZTS*; # weak RTTI symbols for C++ exceptions
/*some method names explicitly*/
local:
*;
}

我认为它与使“共享对象”文件中的符号可用有关,但我不确定。

最佳答案

I think its related to making availability of symbols in the "shared object" file but I'm not sure.

你是对的。

参见 3.9 VERSION Command :

The linker supports symbol versions when using ELF. Symbol versions are only useful when using shared libraries. The dynamic linker can use symbol versions to select a specific version of a function when it runs a program that may have been linked against an earlier version of the shared library.

关于c++ - g++命令中 ".map"文件有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22140435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com