![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ELF编译与链接
文章平均质量分 60
beyond702
这个作者很懒,什么都没留下…
展开
-
程序的链接和装入及Linux下动态链接的实现
原帖地址:http://blog.chinaunix.net/uid-11848011-id-96382.html程序的链接和装入存在着多种方法,而如今最为流行的当属动态链接、动态装入方法。本文首先回顾了链接器和装入器的基本工作原理及这一技术的发展历史,然后通过实际的例子剖析了Linux系统下动态链接的实现。了解底层关键技术的实现细节对系统分析和设计人员无疑是必须的,尤其当我们转载 2016-08-09 17:27:02 · 540 阅读 · 0 评论 -
Android ELF文件编译之符号隐藏
编译系统是一套非常强大的系统,有众多的编译参数,但是大部分人只听过很少几个,希望以后能有时间好好看一下相关的资料研究清楚。今天来介绍Android下面NDK编译so时,怎样实现符号隐藏,gcc默认的情况下是将所有符号都导出的,为了安全启见可以将符号隐藏,可以给破解带来很大的麻烦,另外还可以有效减小so文件的大小,还有一个好处是可以加快程序的运行速度。隐藏符号基本有几种方式:一种是在函数定义原创 2017-02-21 14:59:49 · 2800 阅读 · 0 评论 -
SO文件包大小优化
1、编译参数--ffunction-sections,-fdata-sections,链接参数-Wl,--gc-sections, --ffunction-sections和-fdata-sections会把符号编译成单独的section,--gc-sections在链接的时候会去掉用不到的符号,从而减小包大小2、-Ox,各个级别的包大小关系:-O3 > -O2 &g...原创 2019-05-23 10:10:29 · 5265 阅读 · 1 评论