首页
社区
课程
招聘
[求助]什么叫函数级链接?
发表于: 2009-6-24 17:16 5638

[求助]什么叫函数级链接?

2009-6-24 17:16
5638
在链接选项里有/Gy (Enable Function-Level Linking)
可是不明白.
能通过看OBJ的符号文件,能不能看出什么来? 谁能讲讲?

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 7922
活跃值: (3633)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
假设有一个库(lib):
void f1(){}
void f2(){}
你的程序中使用到 f1
使用 /Gy
f1被链接到程序中,因为允许编译器以封装函数 (COMDAT) 的形式将各个函数打包,所以f2可以不被链接进去
如果使用 /Gy-
f1和f2都被链接到程序中

/Gy 的好处就是可以方便移除没有被引用的函数
2009-6-24 19:54
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
封装函数 (COMDAT) 那到底是什么形式? 给个样子看看? 生成的符号是什么样子》?
2009-6-25 20:05
0
雪    币: 7922
活跃值: (3633)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
/Gy
_TEXT	SEGMENT
fun1.....
_TEXT	ENDS
_TEXT	SEGMENT
fun2
_TEXT	ENDS


/Gy-
_TEXT	SEGMENT
fun1.....
fun2....
_TEXT	ENDS
2009-6-29 13:10
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
讲得很明白!
2009-6-29 13:18
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
chken,再请教一下,用dumpbin怎么看.比如我一个fun函数
在dumpbin obj时,看到
1AF 00000000 SECT4A notype ()    External     | _fun
这说明什么问题呢?如何才能看到你给的那种格式?
2009-6-30 09:40
0
游客
登录 | 注册 方可回帖
返回
//