You are not logged in.
I also get a segfault without PGO. I give up.. I'll just wait for the official release.
Offline
Official - arch or official - mozilla-bin? Official mozilla-bin is available, but I would not recommend it. For official arch - disable pgo. Mine will be still more striped and optimized, but it will be more similar.
Proud ex-maintainer of firefox-pgo
Offline
I got this to build without PGO and ff 3.5 is a nice improvement in speed over 3.1.x
However one of the coolest features is support for the HTML 5 <video> tag, except I can't seem to get any videos to play!
anyone else having trouble?
try here: http://www.youtube.com/html5 (click play but nothing happens! )
Offline
Video support is disabled by me in mozconfig (disable-ogg). I cannot manage to compile it in any way with video support.
Proud ex-maintainer of firefox-pgo
Offline
well I got my 1.9.1-pgo compiled and working ...
(i compile from a locally checked out mercurial trunk)
something to do with the new flags it sets in the export CFLAGS/CXXFLAGS lines was causing the segmentation fault
pkgbuild:
pkgname=firefox
pkgver=1.9.1
pkgrel=1
pkgdesc="Mozilla Firefox, tracemonkey-enabled, XULRunner independent, and optimized"
arch=(i686 x86_64)
license=('MPL' 'GPL' 'LGPL')
depends=('gtk2>=2.12.0' 'pango>=1.24.0' 'gcc-libs' 'libxt' 'libidl2' 'mozilla-common' 'nss>=3.11.7' 'desktop-file-utils' 'cairo>=1.8.0' 'libpng>=1.2.24-3')
makedepends=('zip' 'imagemagick' 'pkgconfig' 'gcc' 'diffutils' 'autoconf-compat' 'python')
replaces=('firefox')
conflicts=('firefox')
provides=('firefox'="$pkgver")
install=firefox.install
url="http://www.mozilla.org/projects/firefox"
source=(mozconfig
firefox.desktop
firefox-safe.desktop
profileserver.sh)
md5sums=()
build() {
cd ${srcdir}/
#export CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer -floop-interchange -floop-strip-mine -floop-block -ftest-coverage -fprofile-arcs"
#export CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer -floop-interchange -floop-strip-mine -floop-block -ftest-coverage -fprofile-arcs"
#export LDFLAGS="-fprofile-arcs -fprofile-correction -Wl,--rpath,/usr/lib/firefox-${pkgver},--hash-style=gnu,--sort-common -s"
#LD_PRELOAD=""
export LDFLAGS="-Wl,-rpath,/usr/lib/firefox-${pkgver}"
make -j1 -f client.mk profiledbuild MOZ_MAKE_FLAGS="${MAKEFLAGS}" || return 1
make -j1 DESTDIR=${pkgdir} -C ./ff-pgo install || return 1
install -m755 -d ${pkgdir}/usr/share/applications
install -m755 -d ${pkgdir}/usr/share/pixmaps
install -m644 ${srcdir}/browser/branding/unofficial/default48.png ${pkgdir}/usr/share/pixmaps/firefox.png || return 1
install -m644 ${srcdir}/firefox.desktop ${pkgdir}/usr/share/applications/ || return 1
install -m644 ${srcdir}/firefox-safe.desktop ${pkgdir}/usr/share/applications/ || return 1
}
mozconfig
. $topsrcdir/browser/config/mozconfig
#mk_add_options MOZ_CO_PROJECT=browser
#ac_add_options --enable-application=browser
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
mk_add_options BUILD_OFFICIAL=1
mk_add_options MOZILLA_OFFICIAL=1
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/ff-pgo
mk_add_options PROFILE_GEN_SCRIPT=@TOPSRCDIR@/profileserver.sh
ac_add_options --enable-optimize
#ac_add_options --enable-profile-guided-optimization
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
ac_add_options --with-pthreads
ac_add_options --enable-strip
#ac_add_options --enable-install-strip
ac_add_options --disable-installer
ac_add_options --disable-updater
#ac_add_options --enable-official-branding
#ac_add_options --enable-extensions=default
ac_add_options --disable-safe-browsing
ac_add_options --disable-crashreporter
#ac_add_options --disable-parental-controls
#ac_add_options --disable-accessibility
#ac_add_options --enable-native-uconv
#ac_add_options --disable-mochitest
#ac_add_options --disable-oji
ac_add_options --enable-default-toolkit=cairo-gtk2
#ac_add_options --enable-xft
#ac_add_options --disable-freetype2
ac_add_options --enable-xinerama
ac_add_options --enable-pango
ac_add_options --enable-system-cairo
ac_add_options --enable-svg
ac_add_options --enable-canvas
#ac_add_options --enable-system-sqlite
#ac_add_options --enable-jemalloc
#ac_add_options --enable-webservices
#ac_add_options --enable-xpctools
ac_add_options --disable-xprint
#ac_add_options --disable-jsd
#ac_add_options --disable-javaxpcom
#ac_add_options --disable-ogg
#ac_add_options --disable-pedantic
#ac_add_options --disable-printing
#ac_add_options --disable-xpcom-obsolete
ac_add_options --with-system-zlib
ac_add_options --with-system-png
#ac_add_options --with-system-nspr
#ac_add_options --with-system-nss
#ac_add_options --with-system-jpeg
#ac_add_options --with-system-lcms
makepkg.conf
CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe"
CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe"
Offline
always profileserver exit -11 error, can't get pgo compiled on X86_64 system. and tried another profileserver mentioned by bangkok_manouel, got segmentfault, so I think firefox bin somewhere doesn't compile right caused the profile testing failed, and we shall not blame the profileserver.
Offline
I had problem on my dual core system compiling firefox-pgo 3.0.11 because of corrupted profiling info even with MAKEFLAGS="-j1"
Adding "-fprofile-correction" to the CFLAGS and CXXFLAGS in the PKGBUILD file solved the problem for me. If you have problems with corrupted profile info try this.
I see that "-fprofile-correction is already added to LDFLAGS, but I don't think is useful because the profiling info corruption shows up during compilation and not linking.
Bye
Marcello
Offline
always profileserver exit -11 error, can't get pgo compiled on X86_64 system. and tried another profileserver mentioned by bangkok_manouel, got segmentfault, so I think firefox bin somewhere doesn't compile right caused the profile testing failed, and we shall not blame the profileserver.
i've notice that too. the final package does not have firefox-bin and is segmentfaulting, even i compile with profile or without. i really don't know why is doing that because in the past i compile without profile and was working fine.
Give what you have. To someone, it may be better than you dare to think.
Offline
I'm trying to compile it with cflags, without cflags, with ldflags, without, with default mozconfig, with modified mozconfig, wit and without pgo - no succes. It looks like problem with gcc...
Proud ex-maintainer of firefox-pgo
Offline
seenxu wrote:always profileserver exit -11 error, can't get pgo compiled on X86_64 system. and tried another profileserver mentioned by bangkok_manouel, got segmentfault, so I think firefox bin somewhere doesn't compile right caused the profile testing failed, and we shall not blame the profileserver.
i've notice that too. the final package does not have firefox-bin and is segmentfaulting, even i compile with profile or without. i really don't know why is doing that because in the past i compile without profile and was working fine.
I've just successfully compiled ff3.5 rc1 without pgo, but with pgo it will still end with that -11 error.
tested with sunspider
3.0.11 with pgo 49xx
3.5 rc1 without pgo 44xx
PS: both are compiled with gcc 4.2.4, X86_64, kernel 2.6.27
Offline
Using what settings? From my pkgbuild/mozconfig or with some changes? Share!
Proud ex-maintainer of firefox-pgo
Offline
I'm trying to compile it with cflags, without cflags, with ldflags, without, with default mozconfig, with modified mozconfig, wit and without pgo - no succes. It looks like problem with gcc...
yeah, I've tried to compile ff3.5rc1 pgo with gcc-4.1.3, gcc-4.2.4, gcc-4.3.2, all ends up with different errors, so I am just curious if ff3.5 is impossible to be built with pgo on X86_64 platform?! has anybody heard somewhere there is somebody had done it(ff3.5pgo on X86_64) successfully?
Offline
I've been trying to compile Firefox with PGO since late March with little luck. About a month ago I somehow managed to build 3.5b4 using blasse's firefox-pgo-beta package, but was unable to replicate it just a few days later with the exact same files. That was the only success I had out of about 20 tries over a couple month period, which is pretty odd. Useless, but still odd.
I've been looking around and noticed a new firefox-3.5 package was submitted to AUR recently, and it also uses PGO to build 3.5b99. The one major difference I can see after a quick look is that it is dependent on xulrunner-1.9.1. Somebody there recently reported that 'it works', and by this point the smallest inkling of success is enough for me to try it. My one-time 3.5b4 build still performs twice as slow on the Sunspider tests than ones I compiled around March, but those were on a different system and perform even poorer when I try to bring them over to my Arch machine using identical hardware. Go figure.
http://aur.archlinux.org/packages.php?ID=26057 is the package I'm talking about. I'm building it now, and am wondering if anyone else has tried it. If it works maybe it could help with building other Firefox packages as well.
Offline
PGOing ff based on xulrunner is useless. Xulrunner is engine, ff - gui. If U compile gui with pgo and engine without there will be no speed gain. btw. There is now way to pgo xulrunner now, that's why I'm trying to build ff without it
ps. Last pgo I've successfully compiled was 3.5b4. No luck with b99 or rc1. I think that number of tries exceeded 100 now
Proud ex-maintainer of firefox-pgo
Offline
Ok, that makes a lot of sense. Thanks for the clarification, I always wondered what the advantage to going xulrunner-independent was. Hopefully 3.5 final will be a little PGO-friendlier, since it really makes a noticeable difference when browsing.
Offline
Using what settings? From my pkgbuild/mozconfig or with some changes? Share!
Can you share your pkgbuild + files you used to compile the non-pgo version of firefox 3.5rc1?
I am not arch user, but love arch forum, so there is no pkgbuild, only a plain .mozconfig
gcc 4.2.4 ubuntu 64bit 8.10
the procedures:
* download firefox-3.5rc1-source.tar.bz2 from mozilla nightly ftp
* tar xvf firefox-3.5rc1-source.tar.bz2
* cd mozilla-1.9.1/
* make sure we have .mozconfig inside dir mozilla-1.9.1
* time make -f client.mk build
* after about 35mins on my amd x2 3800+ pc, the firefox binary will be resided inside mozilla-1.9.1/firefox-bin/dist/bin/
my messy mozconfig
. $topsrcdir/browser/config/mozconfig
MAKEFLAGS="-j3"
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-bin
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --enable-pango
ac_add_options --with-user-appdir=.mozilla
ac_add_options --with-system-jpeg=/usr
ac_add_options --enable-postscript
ac_add_options --enable-installer
ac_add_options --disable-xprint
ac_add_options --enable-crypto
ac_add_options --enable-canvas
ac_add_options --enable-svg
ac_add_options --enable-svg-renderer=cairo
ac_add_options --enable-system-cairo
ac_add_options --enable-mathml
ac_add_options --disable-tests
ac_add_options --disable-gtktest
ac_add_options --disable-debug
ac_add_options --enable-xft
ac_add_options --enable-optimize="-O2 -march=athlon64 -pipe -msse -msse2 -msse3 -mmmx -m3dnow -mfpmath=sse -D_FORTIFY_SOURCE=2 -ftracer -fomit-frame-pointer"
ac_add_options --with-system-zlib=/usr
ac_add_options --disable-pedantic
ac_add_options --disable-long-long-warning
ac_add_options --enable-single-profile
ac_add_options --disable-profilesharing
ac_add_options --disable-updater
ac_add_options --with-pthreads
ac_add_options --with-system-nss
ac_add_options --enable-system-sqlite
ac_add_options --prefix=/usr
ac_add_options --disable-mochitest
ac_add_options --disable-dependency-tracking
ac_add_options --enable-jemalloc
Offline
@seenxu can you upload somewhere the package?
Give what you have. To someone, it may be better than you dare to think.
Offline
@seenxu can you upload somewhere the package?
you mean the compiled binary?
Offline
wonder wrote:@seenxu can you upload somewhere the package?
you mean the compiled binary?
yes.
Give what you have. To someone, it may be better than you dare to think.
Offline
seenxu wrote:wonder wrote:@seenxu can you upload somewhere the package?
you mean the compiled binary?
yes.
a deb file(no pgo ff3.5 rc)
Last edited by seenxu (2009-06-13 17:26:25)
Offline
nvm. i was thinking that you compiled in archlinux a pgo version.
Give what you have. To someone, it may be better than you dare to think.
Offline
nvm. i was thinking that you compiled in archlinux a pgo version.
sorry, no pgo.
Offline
Say...what are the chances of this thing building if i put --enable-default-toolkit=cairo-QT in mozconfig? Id hate to wait 4hrs and find out it failed seeing as it took about 6hrs to compile the first time.
Offline