C编译器和链接器部分命名

时间:2016-11-15 18:46:16

标签: c gcc linker gnu ld

我正在使用特定部分来存储我的变量,因此它们在内存中是连续的。 我想引用存储变量的存储区域。

我遇到了链接器提供的__start_XXX和__stop_XXX符号的使用,XXX是一个部分名称。

我一直在寻找有关__start_和__stop_符号定义的文档。 此外,该部分的名称对它有影响:部分通常以点“.mysection”开头,以点开头的部分似乎与不使用的部分处理不同。这个文件是在哪个文件中定义的?

其他问题: 我可以使用sort在我的链接器文件中订购该部分。 如何订购每个部分下的元素?

此致

1 个答案:

答案 0 :(得分:0)

  1. 文档:
  2. 该部分的位置与所用部分名称的字母顺序无关。

    您使用的是哪种工具?如果是GCC,此链接将为您提供帮助Linker Scripts

    1. 其他问题:
    2. 内存中对象的顺序(链接二进制文件)对应于赋予链接器的文件顺序。