找回密码
 注册
查看: 3491|回复: 19

Optimizing Linker Load Times

[复制链接]
发表于 2006-8-29 14:19:23 | 显示全部楼层 |阅读模式
http://lwn.net/Articles/192624/
 楼主| 发表于 2006-8-29 14:22:30 | 显示全部楼层
http://sources.redhat.com/ml/binutils/2006-06/msg00418.html
回复

使用道具 举报

发表于 2006-9-8 12:40:48 | 显示全部楼层
好像就是prelink
回复

使用道具 举报

 楼主| 发表于 2006-9-9 00:30:08 | 显示全部楼层
楼上一定没细看
回复

使用道具 举报

发表于 2006-9-9 19:08:21 | 显示全部楼层
又看了一遍,是给核心的工具链的打的一个补丁
回复

使用道具 举报

 楼主| 发表于 2006-9-9 21:38:18 | 显示全部楼层
楼上这回只是看了第二个而没看第一个

减少动态链接程序的启动时间以及加快运行速度是目的。方法有很多,为工具链打补丁,指定LDFLAGS,使用prelink。。。

楼下的回复里有人给出了 LDFLAGS="-Wl,-O1,-Bdirect,--hash-style=both" 。用gentoo的可以试试看,不过可能不是所有包都能正确编译(打补丁就是为了解决这个以及prelink的问题)。如果觉得不过瘾可以弄成 LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,--hash-style=both"

顺便提一下,最后结论里说的“Future”就会在FC6里成为现实
回复

使用道具 举报

发表于 2006-9-10 22:32:31 | 显示全部楼层
http://forums.gentoo.org/viewtopic-t-480002-highlight-gcc4.html

这个我早用过了

滔滔也去试试吧   
回复

使用道具 举报

发表于 2006-9-10 22:33:13 | 显示全部楼层
顺便说一下,他的livecd不错(带命令行的mplayer,一边装一边看电影的感觉不错  )
回复

使用道具 举报

 楼主| 发表于 2006-9-10 23:20:22 | 显示全部楼层
# After binutils and glibc rebuild
# LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=both"
...
* GNU Hashstyle prelinking (safe, as seen in fedore core 6 beta)

它自己的工具链还是不行啊。二楼的补丁就是为解决这个
而且我记得LDFLAGS="-Wl,-O1 -Wl,--as-needed"早就有了,至少已经1年多了

不过像这种集合了众多优化方法的文章确实值得一看,即便是不用gentoo

我也顺便说一下,从没用过livecd装系统。因为chroot实在太方便了
回复

使用道具 举报

 楼主| 发表于 2006-9-10 23:29:26 | 显示全部楼层
gentoo的论坛是不是没有精华区阿?那想看个有价值的帖子岂不是很费时
回复

使用道具 举报

发表于 2006-9-11 10:27:30 | 显示全部楼层
我也顺便说一下,从没用过livecd装系统。因为chroot实在太方便了 Cool

lfs还是用它的livecd安全一点。。。。
回复

使用道具 举报

发表于 2006-9-12 09:36:31 | 显示全部楼层
不打补丁能用哪个参数?
回复

使用道具 举报

 楼主| 发表于 2006-9-12 12:11:30 | 显示全部楼层
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed"

或者参考 http://gentoo-wiki.com/TIP_Safe_LDFLAGS
http://forums.gentoo.org/viewtopic-t-67777.html
http://forums.gentoo.org/viewtopic-t-226909.html
http://forums.gentoo.org/viewtopic-t-316445.html
回复

使用道具 举报

发表于 2006-9-12 20:33:09 | 显示全部楼层
对了,3n 你知道哪个软件包和编译程序有关系?我现在编译 svn ,总是莫名其妙的出现使用 i686-linux-pc-gnu-gcc 编译,而且似乎 as 还是使用 i686 的?
回复

使用道具 举报

 楼主| 发表于 2006-9-12 22:18:22 | 显示全部楼层
你真要用786重做系统?
而且似乎 as 还是使用 i686 的

重编binutils
是莫名其妙的出现使用 i686-linux-pc-gnu-gcc 编译

重编gcc和glibc

再把make、automake、autoconf也来一编,如果还不行的话那就是786确实有问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2025-5-14 11:48 , Processed in 0.044769 second(s), 15 queries .

© 2001-2025 Discuz! Team. Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表