Date: Thu, 26 May 2011 13:06:31 +0200 From: Daniel Nebdal <dnebdal@gmail.com> To: Neko Chang <epopen@gmail.com> Cc: gecko@freebsd.org, freebsd-ports@freebsd.org Subject: Re: Firefox 4 with PGO compile error Message-ID: <BANLkTin3-O24K-8E7NZKGZXUGykVO1NYWQ@mail.gmail.com> In-Reply-To: <BANLkTikHg7ZjFVib252M545EiQ-FEdJxJQ@mail.gmail.com> References: <BANLkTi=bTrY9jnF17jEOzOZ-VZ_esZGw2A@mail.gmail.com> <BANLkTikypGsL=79s9WeFDdQnhd2Xwh2vdQ@mail.gmail.com> <BANLkTikHg7ZjFVib252M545EiQ-FEdJxJQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, May 26, 2011 at 4:31 AM, Neko Chang <epopen@gmail.com> wrote: > 2011/5/25 Daniel Nebdal <dnebdal@gmail.com>: >> On Wed, May 25, 2011 at 5:22 AM, Neko Chang <epopen@gmail.com> wrote: >>> Hi FreeBSD team :D >>> >>> I tried build firefox 4 with PGO support via ports under GNOME >>> 2.32.1(ordinary user, but build firefox by root), but build fail. >>> Later I posted the problem to FreeBSD support >>> forums,(http://forums.freebsd.org/showthread.php?t=3D23827) >>> But can't solve it. >>> >>> So I write the mail :D >>> Please help me.... >>> >>> * Output from 'uname -a'. >>> FreeBSD epopen.com 8.2-STABLE FreeBSD 8.2-STABLE #0: Sat Apr 23 >>> 16:23:23 CST 2011 =C2=A0 =C2=A0 localhost:/usr/obj/usr/src/sys/Kernel = =C2=A0amd64 >>> >>> * Output from 'ident /usr/ports/www/firefox/Makefile' >>> /usr/ports/www/firefox/Makefile: >>> =C2=A0 =C2=A0 $FreeBSD: ports/www/firefox/Makefile,v 1.240 2011/04/29 0= 6:31:39 flo Exp $ >>> >>> * Where/when did the problem occur: configuring, building, or =C2=A0 ru= nning firefox >>> =C2=A0Build. >>> >>> * How can you reproduce the problem? >>> =C2=A0If turn-on PGO in "make config" >>> >>> Under is error message.... >>> >>> if test -d ../../../../dist/bin ; then touch >>> ../../../../dist/bin/.purgecaches ; fi >>> gmake[5]: Leaving directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/o= ther-licenses/branding/firefox/locales' >>> hg: not found >>> Making langpack >>> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/br= owser/locales/../../dist/install/firefox-4.0.1.en-US.langpack.xpi >>> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/co= nfig/nsinstall >>> -D ../../dist/install/ >>> /usr/local/bin/perl5.12.3 >>> /usr/ports/www/firefox/work/mozilla-2.0/config/preprocessor.pl >>> -DOSTYPE=3D\"FreeBSD8\" -DOSARCH=3DFreeBSD -DAB_CD=3Den-US >>> -DMOZ_LANGPACK_EID=3Dlangpack-en-US@firefox.mozilla.org >>> -DMOZ_APP_VERSION=3D4.0.1 >>> -DLOCALE_SRCDIR=3D/usr/ports/www/firefox/work/mozilla-2.0/browser/local= es/en-US >>> -DPKG_BASENAME=3D"firefox-4.0.1.en-US.freebsd8.2-amd64" >>> -DPKG_INST_BASENAME=3D"firefox-4.0.1.en-US.freebsd8.2-amd64.installer" >>> -DDLL_PREFIX=3Dlib -DDLL_SUFFIX=3D.so -DBIN_SUFFIX=3D -DHAVE_64BIT_OS= =3D1 >>> -DMOZILLA_VERSION=3D\"2.0.1\" -DMOZILLA_VERSION_U=3D2.0.1 -DD_INO=3Dd_i= no >>> -DSTDC_HEADERS=3D1 -DHAVE_SSIZE_T=3D1 -DHAVE_ST_BLKSIZE=3D1 >>> -DHAVE_SIGINFO_T=3D1 -DHAVE_INT16_T=3D1 -DHAVE_INT32_T=3D1 -DHAVE_INT64= _T=3D1 >>> -DHAVE_UINT=3D1 -DHAVE_UINT16_T=3D1 -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE= =3D1 >>> -DHAVE_VISIBILITY_ATTRIBUTE=3D1 -DHAVE_DIRENT_H=3D1 -DHAVE_GETOPT_H=3D1 >>> -DHAVE_MEMORY_H=3D1 -DHAVE_UNISTD_H=3D1 -DHAVE_NL_TYPES_H=3D1 >>> -DHAVE_X11_XKBLIB_H=3D1 -DHAVE_SYS_STATVFS_H=3D1 -DHAVE_MMINTRIN_H=3D1 >>> -DHAVE_SYS_CDEFS_H=3D1 -DHAVE_DLOPEN=3D1 -DHAVE_DLADDR=3D1 -DFUNCPROTO= =3D15 >>> -DHAVE_XSHM=3D1 -DHAVE_LIBXSS=3D1 -DHAVE_FT_BITMAP_SIZE_Y_PPEM=3D1 >>> -DHAVE_FT_GLYPHSLOT_EMBOLDEN=3D1 -DHAVE_FT_LOAD_SFNT_TABLE=3D1 >>> -DHAVE_FT_SELECT_SIZE=3D1 -D_REENTRANT=3D1 -D_THREAD_SAFE=3D1 >>> -DHAVE_RANDOM=3D1 -DHAVE_STRERROR=3D1 -DHAVE_LCHOWN=3D1 -DHAVE_FCHMOD= =3D1 >>> -DHAVE_SNPRINTF=3D1 -DHAVE_MEMMOVE=3D1 -DHAVE_SETBUF=3D1 -DHAVE_ISATTY= =3D1 >>> -DHAVE_FLOCKFILE=3D1 -DHAVE_LOCALTIME_R=3D1 -DHAVE_STRTOK_R=3D1 >>> -DHAVE_CLOCK_MONOTONIC=3D1 -DHAVE_LANGINFO_CODESET=3D1 -DVA_COPY=3Dva_c= opy >>> -DHAVE_VA_COPY=3D1 -DHAVE_VA_LIST_AS_ARRAY=3D1 -DHAVE_THREAD_TLS_KEYWOR= D=3D1 >>> -DMALLOC_H=3D\<sys/malloc.h\> -DHAVE_STRNDUP=3D1 -DHAVE_POSIX_MEMALIGN= =3D1 >>> -DHAVE_VALLOC=3D1 -DHAVE_I18N_LC_MESSAGES=3D1 -DHAVE_LOCALECONV=3D1 >>> -DNS_ALWAYS_INLINE=3D__attribute__\(\(always_inline\)\) >>> -DNS_ATTR_MALLOC=3D__attribute__\(\(malloc\)\) >>> -DNS_WARN_UNUSED_RESULT=3D__attribute__\(\(warn_unused_result\)\) >>> -DNS_NORETURN=3D__attribute__\(\(noreturn\)\) -DMOZ_PHOENIX=3D1 >>> -DMOZ_BUILD_APP=3Dbrowser -DMOZ_X11=3D1 -DMOZ_WIDGET_GTK2=3D1 >>> -DMOZ_PDF_PRINTING=3D1 -DMOZ_ENABLE_XREMOTE=3D1 -DMOZ_OFFICIAL_BRANDING= =3D1 >>> -DMOZ_DISTRIBUTION_ID=3D\"org.mozilla\" -DMOZ_PANGO=3D1 >>> -DMOZ_ENABLE_GNOMEVFS=3D1 -DMOZ_ENABLE_GCONF=3D1 -DMOZ_ENABLE_LIBNOTIFY= =3D1 >>> -DMOZ_ENABLE_GNOMEUI=3D1 -DMOZ_ENABLE_DBUS=3D1 -DIBMBIDI=3D1 >>> -DMOZ_VIEW_SOURCE=3D1 -DACCESSIBILITY=3D1 -DMOZ_JSLOADER=3D1 -DNS_PRINT= ING=3D1 >>> -DNS_PRINT_PREVIEW=3D1 -DMOZ_OGG=3D1 -DATTRIBUTE_ALIGNED_MAX=3D64 >>> -DMOZ_WEBM=3D1 -DVPX_X86_ASM=3D1 -DMOZ_WAVE=3D1 -DMOZ_SYDNEYAUDIO=3D1 >>> -DMOZ_MEDIA=3D1 -DMOZ_VORBIS=3D1 -DMOZ_XTF=3D1 >>> -DMOZ_CRASHREPORTER_ENABLE_PERCENT=3D100 -DMOZ_MATHML=3D1 -DMOZ_SVG=3D1 >>> -DMOZ_SMIL=3D1 -DMOZ_UPDATE_CHANNEL=3Ddefault -DMOZ_FEEDS=3D1 >>> -DMOZ_STORAGE=3D1 -DMOZ_SAFE_BROWSING=3D1 -DMOZ_URL_CLASSIFIER=3D1 >>> -DNS_DISABLE_LOGGING=3D1 -DHAVE___CXA_DEMANGLE=3D1 >>> -DMOZ_CHROME_FILE_FORMAT_JAR=3D1 >>> -DMOZ_DEFAULT_MOZILLA_FIVE_HOME=3D\"/usr/local/lib/firefox\" >>> -DMOZ_USER_DIR=3D\".mozilla\" -DMOZ_STATIC_JS=3D1 -DMOZ_ENABLE_LIBXUL= =3D1 >>> -DHAVE_STDINT_H=3D1 -DHAVE_INTTYPES_H=3D1 -DMOZ_XUL=3D1 >>> -DMOZ_PROFILELOCKING=3D1 -DMOZ_RDF=3D1 -DBUILD_CTYPES=3D1 -DMOZ_MORKREA= DER=3D1 >>> -DMOZ_PLACES=3D1 -DMOZ_SERVICES_SYNC=3D1 -DMOZ_APP_UA_NAME=3D\"\" >>> -DMOZ_APP_UA_VERSION=3D\"4.0.1\" -DMOZ_UA_FIREFOX_VERSION=3D\"4.0.1\" >>> -DMOZ_UA_BUILDID=3D\"20100101\" -DMOZ_DLL_SUFFIX=3D\".so\" >>> -DHAVE_FONTCONFIG_FCFREETYPE_H=3D1 -DXP_UNIX=3D1 -DUNIX_ASYNC_DNS=3D1 >>> -DMOZ_ACCESSIBILITY_ATK=3D1 -DATK_MAJOR_VERSION=3D1 -DATK_MINOR_VERSION= =3D32 >>> -DATK_REV_VERSION=3D0 >>> -I/usr/ports/www/firefox/work/mozilla-2.0/toolkit/locales/en-US/defines= .inc >>> -I/usr/ports/www/firefox/work/mozilla-2.0/browser/locales/en-US/defines= .inc >>> /usr/ports/www/firefox/work/mozilla-2.0/browser/locales/generic/install= .rdf >>>> ../../dist/xpi-stage/locale-en-US/install.rdf >>> cd ../../dist/xpi-stage/locale-en-US && \ >>> =C2=A0/usr/local/bin/zip -r9D >>> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/br= owser/locales/../../dist/install/firefox-4.0.1.en-US.langpack.xpi >>> install.rdf chrome chrome.manifest -x chrome/en-US.manifest >>> =C2=A0adding: install.rdf (deflated 50%) >>> =C2=A0adding: chrome/en-US.jar (deflated 75%) >>> =C2=A0adding: chrome.manifest (deflated 78%) >>> gmake[4]: Leaving directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/b= rowser/locales' >>> gmake[3]: Leaving directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/b= rowser/installer' >>> gmake tools >>> gmake[3]: Entering directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/b= rowser/installer' >>> gmake[3]: Nothing to be done for `tools'. >>> gmake[3]: Leaving directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/b= rowser/installer' >>> if test -d ../../dist/bin ; then touch ../../dist/bin/.purgecaches ; fi >>> hg: not found >>> gmake[2]: Leaving directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/b= rowser/installer' >>> gmake[1]: Leaving directory >>> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2' >>> OBJDIR=3Dobj-amd64-unknown-freebsd8.2 /usr/local/bin/python2.7 >>> obj-amd64-unknown-freebsd8.2/_profile/pgo/profileserver.py >>> args: ['/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freeb= sd8.2/dist/firefox/firefox-bin', >>> '-no-remote', '-profile', >>> '/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/_= profile/pgo/pgoprofile/', >>> 'http://127.0.0.1:8888/index.html'] >>> INFO | automation.py | Application pid: 95151 >>> >>> (firefox-bin:95151): GnomeUI-WARNING **: While connecting to session ma= nager: >>> None of the authentication protocols specified are supported. >>> ** >>> GLib-GIO:ERROR:gdbusconnection.c:2270:initable_init: assertion failed: >>> (connection->initialization_error =3D=3D NULL) >>> TEST-UNEXPECTED-FAIL | automation.py | Exited with code -6 during test = run >>> INFO | automation.py | Application ran for: 0:00:03.279356 >>> INFO | automation.py | Reading PID log: /tmp/tmpJZSM19pidlog >>> gmake: *** [profiledbuild] Error 250 >>> *** Error code 1 >>> >>> Stop in /usr/ports/www/firefox. >>> *** Error code 1 >>> >>> Stop in /usr/ports/www/firefox. >>> [/usr/ports/www/firefox]# >>> =EF=BC=9D=EF=BC=9D=EF=BC=9D=EF=BC=9D >>> >>> Make start, System print-out under message >>> To build Firefox with PGO support you need a running X server and >>> =C2=A0 build this port with an user who could access the X server! >>> >>> During the build a Firefox instance will start and run some test. >>> =C2=A0 =C2=A0 =C2=A0Do not interrupt or close Firefox during this tests= ! >>> >>> The message and error log, I think firefox need connect a daemon >>> (localhost:8888) if PGO support ON when build. >>> But I don't know what daemon =C2=A0need, even Google..... >>> >>> If I help to debug, Please tell me. >>> Thanks your hard work, Let us good firefox :D >>> >> > Thanks =C2=A0Daniel Nebdal >> >> I *think* that error is because it expects a gnome session (or at >> least a dbus server) to be available. If you used plain "su" to become >> root, it won't have the right environment. Could you try either sudo >> or su -m ? >> > > I tried your suggest "su -m" for compile firefox and got under error log.= .. > cd ../../dist/xpi-stage/locale-en-US && \ > =C2=A0/usr/local/bin/zip -r9D > /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/brow= ser/locales/../../dist/install/firefox-4.0.1.en-US.langpack.xpi > install.rdf chrome chrome.manifest -x chrome/en-US.manifest > =C2=A0adding: install.rdf (deflated 50%) > =C2=A0adding: chrome/en-US.jar (deflated 75%) > =C2=A0adding: chrome.manifest (deflated 78%) > gmake[4]: Leaving directory > `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/bro= wser/locales' > gmake[3]: Leaving directory > `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/bro= wser/installer' > gmake tools > gmake[3]: Entering directory > `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/bro= wser/installer' > gmake[3]: Nothing to be done for `tools'. > gmake[3]: Leaving directory > `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/bro= wser/installer' > if test -d ../../dist/bin ; then touch ../../dist/bin/.purgecaches ; fi > hg: not found > gmake[2]: Leaving directory > `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/bro= wser/installer' > gmake[1]: Leaving directory > `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2' > OBJDIR=3Dobj-amd64-unknown-freebsd8.2 /usr/local/bin/python2.7 > obj-amd64-unknown-freebsd8.2/_profile/pgo/profileserver.py > args: ['/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd= 8.2/dist/firefox/firefox-bin', > '-no-remote', '-profile', > '/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/_pr= ofile/pgo/pgoprofile/', > 'http://127.0.0.1:8888/index.html'] > INFO | automation.py | Application pid: 34583 > ** > GLib-GIO:ERROR:gdbusconnection.c:2270:initable_init: assertion failed: > (connection->initialization_error =3D=3D NULL) > TEST-UNEXPECTED-FAIL | automation.py | Exited with code -6 during test ru= n > INFO | automation.py | Application ran for: 0:00:03.013733 > INFO | automation.py | Reading PID log: /tmp/tmpKm9_Mgpidlog > gmake: *** [profiledbuild] Error 250 > *** Error code 1 > > Stop in /usr/ports/www/firefox. > *** Error code 1 > > Stop in /usr/ports/www/firefox. > ** Command failed [exit code 1]: /usr/bin/script -qa > /tmp/portupgrade20110526-91985-h6sf0l-0 env UPGRADE_TOOL=3Dportupgrade > UPGRADE_PORT=3Dfirefox-4.0.1,1 UPGRADE_PORT_VER=3D4.0.1,1 make > ** Fix the problem and try again. > ** Listing the failed packages (-:ignored / *:skipped / !:failed) > =C2=A0 =C2=A0 =C2=A0 =C2=A0! www/firefox (firefox-4.0.1,1) (missing heade= r) > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > Error message different ! > But tried compile firefox before, I had been upgrade perl-threaded > from 5.12 to 5.14. > I can't know why log different, "su -m" or perl.... > So I will try to compile by plain "su" again for confirm. Before you try compiling - could you try launching a gtk/dbus app from the su shell? (gedit or whatever). If I just su and try, gedit fails with "GLib-GIO:ERROR:gdbusconnection.c:2270:initable_init: assertion failed: (connection->initialization_error =3D=3D NULL)" , which seems to be the same error you got there. On the other hand, "sudo gedit" works for me ... so I suggest trying sudo. As for "su -m" , it lets me run simple X apps, but not e.g. gedit: It looks like it inherits enough to connect to X, but for whatever reason not enough to connect to the dbus daemon. Weird. >> As for the :8888 , I think that's just a build-internal thing: To >> profile, it starts firefox and displays a bunch of web pages, and I >> think it runs a small python web-server on localhost:8888 to serve >> them. > > Is your means about:startpage? I think... > If true, It needn't any server support I tihk. :P > Because I couldn't saw any daemon listen port 8888 by "netstat" in > firefox running Ubuntu 11.04 ... > > Thanks you a lot. > Neko > As I remember it, the profiling run goes through a selection of different pages, so they can exercise a bit more of their rendering and javascript engine - and fetching over TCP instead of from a file means they also get to use those parts of the code. So it's just to capture some more representative usage data. --=20 Daniel Nebdal
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BANLkTin3-O24K-8E7NZKGZXUGykVO1NYWQ>