首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于-ffunction sections -fdata-sections和--gc-sections选项

关于-ffunction sections -fdata-sections和--gc-sections选项
EN

Stack Overflow用户
提问于 2014-07-05 16:39:19
回答 1查看 3.8K关注 0票数 1

在我的ARM项目中,我使用以下代码来构建无操作系统的应用程序二进制文件:

代码语言:javascript
复制
arm-linux-gcc -Os -ffunction-sections -fdata-sections -o boot.o boot.S
arm-linux-gcc -Os -ffunction-sections -fdata-sections -o main.o main.c
arm-linux-ld -T link.lds --gc-sections -o target.bin boot.o main.o

这些都很好用。因为如果删除"-ffunction-sections“、"-fdata-sections”和"--gc-sections“选项,target.bin文件的大小将增加近两倍。

但是在x86平台上,同样的方法,我发现:如果我不使用这两个选项,输出是正常的,但是如果我使用这些选项作为arm平台,输出文件将是0字节。

EN

回答 1

Stack Overflow用户

发布于 2014-07-07 16:26:12

-Os -ffunction-sections -fdata-sections--gc-sections应该可以在x86系统上工作。您确定您的程序和链接器脚本适用于x86吗?由于您的程序是为裸机ARM设计的,因此它可能没有用于x86操作系统的入口点,如果没有入口点,则所有内容都会被--gc-sections选项清除。

顺便说一句,你的“问题”实际上没有包含任何问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24584580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档