阅读:5978回复:18
晒一下自己编译的 firefox【附简单步骤】
Linux x86_64 gcc 4.4.3 o2 pgo 优化编译速度不是一般的快。
版本库是 rev/7640eb022be6 (mozilla central) 之前用swiftweasel, 无奈项目停止了。于是自己编译之。 第一次编译,和大家交流一下。抛砖引玉吧。 我的步骤如下: 先用 hg clone 一下当前版本库。 然后去 tinderbox 看看当前版本是否能通过 mozilla 自己的编译测试。 配置一下编译链和依赖环境。 定制.mozconfig 文件,有 bug 的话去 bugzilla 看看有没有解决方案,或者自己写 个patch也可。 toolkit 我用的 cairo-gtk2 我第一遍用的 cairo-qt ,bug 重重,无奈换成 gtk2了,虽然我用 KDE sc。 另外我发现了mozilla 的一个小改动,见图. 现在它可以自己管理 cache 大小了。 |
|
1楼#
发布于:2010-09-19 22:24
4.0的pgo编译版与非pgo编译半的性能差距确实不大了
自己编译,主要还是为提升firefox周边性能,开关某些可有可无的功能选项 |
|
2楼#
发布于:2010-09-19 22:24
忘了说,把libjpeg-turbo装上,编译时用 --with-system-jpeg 能提升打开jpg/jpeg图片的性能:
http://libjpeg-turbo.virtualgl.org/ 只是如果当前系统用的libjpeg是8.0.x版本的话,装libjpeg-turbo时得当心点,libjpeg-turbo的API是兼容6.0版本的,和8.0版不兼容,一不小心很多应用程序就用不了了。 |
|
3楼#
发布于:2010-09-19 22:24
不用gnome的话,可以加上这两参数:
ac_add_options --disable-gnomvfs --enable-gio libpng虽然不支持apng,不过既然用gentoo,打个apng补丁又有什么难的,apng补丁sf上就有: http://sourceforge.net/projects/libpng-apng/files/ 另外,个人编译过几次hg导出的trunk源码版本,从版本号还是3.7时到现在的最新版,结果显示,无论是否用PGO编译(GCC 4.4和4.5都试过),CSS、JS性能测试和非PGO编译出来的相同。 GCC 4.5在全局启用 -flto -ftree-parallelize-loops=n -floop-parallelize-all 后,编译trunk失败,仅仅在export CXXFLAGS=里使用 -ftree-parallelize-loops=n -floop-parallelize-all 可以成功编译,不过性能也没见多少提升。只是现在主要浏览器已经转到chromium,也没以前那么多精力费在fx上了。 |
|
4楼#
发布于:2010-09-19 22:24
实验室有台闲置的 8核至强 服务器,正好拿来编译用。 如果用 ccache 的话,编译一遍不到十分钟。毕竟 trunk 的一次更改不会太多 |
|
5楼#
发布于:2010-09-19 22:24
|
|
6楼#
发布于:2010-09-19 22:24
|
|
|
7楼#
发布于:2010-09-19 22:24
确实啊,Fx4的很多功能都是Windows only,比如D2D……
|
|
|
8楼#
发布于:2010-09-19 22:24
我通常只编译 js/src 目录, 用 --enable-debug 和 --disable-optimize --enable-ctypes. 我只看这部分代码, 其他我都不看.
|
|
9楼#
发布于:2010-09-19 22:24
你说的是Linux下Firefox的界面,还是Linux操作系统的界面?Linux有很多个版本,很多种桌面环境,你又说的哪一个?
|
|
|
10楼#
发布于:2010-09-19 22:24
linux的界面到底哪年才改啊?
真是悲剧! |
|
|
11楼#
发布于:2010-09-19 22:24
|
|
|
12楼#
发布于:2010-09-19 22:24
gmsh: 编译beta版即可,追pre是受罪..... 我也有gentoo,layman中的ebuild拖下来修改即可,至于补丁,你可以用其他的,portage的强大在于其use标记,我不是编译狂人,使用的也只是个本子,每次emerge -avuDN world时,一直对本子提心吊胆的....所以最终还是以arch最为日常系统,不过最近对滚动升级有些许厌烦,考虑入手slackware pacman与emerge,portage与pkgbuild...... |
|
13楼#
发布于:2010-09-19 22:24
|
|
14楼#
发布于:2010-09-19 22:24
kraml:Gentoo下直接用layman增加mozilla overlay就可以了,实在要定制在它的ebuild基础上修改就好了。回到原帖 [quote="havanna"]这方面来说,arch的pkgbuild具有无比优势[/quote] 巧的是我既有 gentoo, 又有arch gentoo 的 mozilla overlay 维护明显跟不上 mozilla 的开发。 arch 的 pacman 系统 有不支持 slots. 更何况arch 本是二进制发行。虽有PKBUILD但是仍然没有 portage 强大。 关于gentoo 的 mozilla overlay, 鬼才知道他打了什么补丁。而且他写的 ebuild 质量也不怎么样。上次我编译 seamonkey 他竟要 apng 的 use,要知道libpng 是没有 apng 的use 的,这样的typo 竟然存在了数周。可见其维护力度。 感觉掌握在自己手里的才最安心。 ![]() |
|
上一页
下一页