请教一个关于lds链接脚本的问题
SECTIONS
{
.text : {
*(.text) ;
}
.data:
{
*(.data);
}
}
上面是一个链接脚本的简单示例,其中*(text)表示所有文件的.text段,*(.data)表示所有文件的.data段,那么我想请问,一个需要链接的文件的.text和.data这些段是如何确定的?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
搭车问,我就编一个大的bin镜像,里面所有内容的地址都是确定的,现在我想指定某个变量的地址是0x111咋弄啊?
源程序中没有明确说明时
编译器默认把代码(函数)都放到.text,全局变量都放到.data
呵 谢谢~~~你说的目标文件时最后生成的ELF文件么?
但是我是想知道链接所需的源文件中,各个section是如何确定的
大体上:
目标文件会有一个section头,记录了许多section的信息,链接后,会将section合并成segment,并在segment头里记录它们的信息。