Firefox 4 with PGO compile error

Norbert Augenstein lists at augenstein.net
Thu May 26 14:51:24 UTC 2011


On Thu, May 26, 2011 at 10:31:15AM +0800, Neko Chang wrote:
> 2011/5/25 Daniel Nebdal <dnebdal at gmail.com>:
> > On Wed, May 25, 2011 at 5:22 AM, Neko Chang <epopen at 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=23827)
> >> 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     localhost:/usr/obj/usr/src/sys/Kernel  amd64
> >>
> >> * Output from 'ident /usr/ports/www/firefox/Makefile'
> >> /usr/ports/www/firefox/Makefile:
> >>     $FreeBSD: ports/www/firefox/Makefile,v 1.240 2011/04/29 06:31:39 flo Exp $
> >>
> >> * Where/when did the problem occur: configuring, building, or   running firefox
> >>  Build.
> >>
> >> * How can you reproduce the problem?
> >>  If 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/other-licenses/branding/firefox/locales'
> >> hg: not found
> >> Making langpack
> >> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/locales/../../dist/install/firefox-4.0.1.en-US.langpack.xpi
> >> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/config/nsinstall
> >> -D ../../dist/install/
> >> /usr/local/bin/perl5.12.3
> >> /usr/ports/www/firefox/work/mozilla-2.0/config/preprocessor.pl
> >> -DOSTYPE=\"FreeBSD8\" -DOSARCH=FreeBSD -DAB_CD=en-US
> >> -DMOZ_LANGPACK_EID=langpack-en-US at firefox.mozilla.org
> >> -DMOZ_APP_VERSION=4.0.1
> >> -DLOCALE_SRCDIR=/usr/ports/www/firefox/work/mozilla-2.0/browser/locales/en-US
> >> -DPKG_BASENAME="firefox-4.0.1.en-US.freebsd8.2-amd64"
> >> -DPKG_INST_BASENAME="firefox-4.0.1.en-US.freebsd8.2-amd64.installer"
> >> -DDLL_PREFIX=lib -DDLL_SUFFIX=.so -DBIN_SUFFIX= -DHAVE_64BIT_OS=1
> >> -DMOZILLA_VERSION=\"2.0.1\" -DMOZILLA_VERSION_U=2.0.1 -DD_INO=d_ino
> >> -DSTDC_HEADERS=1 -DHAVE_SSIZE_T=1 -DHAVE_ST_BLKSIZE=1
> >> -DHAVE_SIGINFO_T=1 -DHAVE_INT16_T=1 -DHAVE_INT32_T=1 -DHAVE_INT64_T=1
> >> -DHAVE_UINT=1 -DHAVE_UINT16_T=1 -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE=1
> >> -DHAVE_VISIBILITY_ATTRIBUTE=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1
> >> -DHAVE_MEMORY_H=1 -DHAVE_UNISTD_H=1 -DHAVE_NL_TYPES_H=1
> >> -DHAVE_X11_XKBLIB_H=1 -DHAVE_SYS_STATVFS_H=1 -DHAVE_MMINTRIN_H=1
> >> -DHAVE_SYS_CDEFS_H=1 -DHAVE_DLOPEN=1 -DHAVE_DLADDR=1 -DFUNCPROTO=15
> >> -DHAVE_XSHM=1 -DHAVE_LIBXSS=1 -DHAVE_FT_BITMAP_SIZE_Y_PPEM=1
> >> -DHAVE_FT_GLYPHSLOT_EMBOLDEN=1 -DHAVE_FT_LOAD_SFNT_TABLE=1
> >> -DHAVE_FT_SELECT_SIZE=1 -D_REENTRANT=1 -D_THREAD_SAFE=1
> >> -DHAVE_RANDOM=1 -DHAVE_STRERROR=1 -DHAVE_LCHOWN=1 -DHAVE_FCHMOD=1
> >> -DHAVE_SNPRINTF=1 -DHAVE_MEMMOVE=1 -DHAVE_SETBUF=1 -DHAVE_ISATTY=1
> >> -DHAVE_FLOCKFILE=1 -DHAVE_LOCALTIME_R=1 -DHAVE_STRTOK_R=1
> >> -DHAVE_CLOCK_MONOTONIC=1 -DHAVE_LANGINFO_CODESET=1 -DVA_COPY=va_copy
> >> -DHAVE_VA_COPY=1 -DHAVE_VA_LIST_AS_ARRAY=1 -DHAVE_THREAD_TLS_KEYWORD=1
> >> -DMALLOC_H=\<sys/malloc.h\> -DHAVE_STRNDUP=1 -DHAVE_POSIX_MEMALIGN=1
> >> -DHAVE_VALLOC=1 -DHAVE_I18N_LC_MESSAGES=1 -DHAVE_LOCALECONV=1
> >> -DNS_ALWAYS_INLINE=__attribute__\(\(always_inline\)\)
> >> -DNS_ATTR_MALLOC=__attribute__\(\(malloc\)\)
> >> -DNS_WARN_UNUSED_RESULT=__attribute__\(\(warn_unused_result\)\)
> >> -DNS_NORETURN=__attribute__\(\(noreturn\)\) -DMOZ_PHOENIX=1
> >> -DMOZ_BUILD_APP=browser -DMOZ_X11=1 -DMOZ_WIDGET_GTK2=1
> >> -DMOZ_PDF_PRINTING=1 -DMOZ_ENABLE_XREMOTE=1 -DMOZ_OFFICIAL_BRANDING=1
> >> -DMOZ_DISTRIBUTION_ID=\"org.mozilla\" -DMOZ_PANGO=1
> >> -DMOZ_ENABLE_GNOMEVFS=1 -DMOZ_ENABLE_GCONF=1 -DMOZ_ENABLE_LIBNOTIFY=1
> >> -DMOZ_ENABLE_GNOMEUI=1 -DMOZ_ENABLE_DBUS=1 -DIBMBIDI=1
> >> -DMOZ_VIEW_SOURCE=1 -DACCESSIBILITY=1 -DMOZ_JSLOADER=1 -DNS_PRINTING=1
> >> -DNS_PRINT_PREVIEW=1 -DMOZ_OGG=1 -DATTRIBUTE_ALIGNED_MAX=64
> >> -DMOZ_WEBM=1 -DVPX_X86_ASM=1 -DMOZ_WAVE=1 -DMOZ_SYDNEYAUDIO=1
> >> -DMOZ_MEDIA=1 -DMOZ_VORBIS=1 -DMOZ_XTF=1
> >> -DMOZ_CRASHREPORTER_ENABLE_PERCENT=100 -DMOZ_MATHML=1 -DMOZ_SVG=1
> >> -DMOZ_SMIL=1 -DMOZ_UPDATE_CHANNEL=default -DMOZ_FEEDS=1
> >> -DMOZ_STORAGE=1 -DMOZ_SAFE_BROWSING=1 -DMOZ_URL_CLASSIFIER=1
> >> -DNS_DISABLE_LOGGING=1 -DHAVE___CXA_DEMANGLE=1
> >> -DMOZ_CHROME_FILE_FORMAT_JAR=1
> >> -DMOZ_DEFAULT_MOZILLA_FIVE_HOME=\"/usr/local/lib/firefox\"
> >> -DMOZ_USER_DIR=\".mozilla\" -DMOZ_STATIC_JS=1 -DMOZ_ENABLE_LIBXUL=1
> >> -DHAVE_STDINT_H=1 -DHAVE_INTTYPES_H=1 -DMOZ_XUL=1
> >> -DMOZ_PROFILELOCKING=1 -DMOZ_RDF=1 -DBUILD_CTYPES=1 -DMOZ_MORKREADER=1
> >> -DMOZ_PLACES=1 -DMOZ_SERVICES_SYNC=1 -DMOZ_APP_UA_NAME=\"\"
> >> -DMOZ_APP_UA_VERSION=\"4.0.1\" -DMOZ_UA_FIREFOX_VERSION=\"4.0.1\"
> >> -DMOZ_UA_BUILDID=\"20100101\" -DMOZ_DLL_SUFFIX=\".so\"
> >> -DHAVE_FONTCONFIG_FCFREETYPE_H=1 -DXP_UNIX=1 -DUNIX_ASYNC_DNS=1
> >> -DMOZ_ACCESSIBILITY_ATK=1 -DATK_MAJOR_VERSION=1 -DATK_MINOR_VERSION=32
> >> -DATK_REV_VERSION=0
> >> -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 && \
> >>  /usr/local/bin/zip -r9D
> >> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/locales/../../dist/install/firefox-4.0.1.en-US.langpack.xpi
> >> install.rdf chrome chrome.manifest -x chrome/en-US.manifest
> >>  adding: install.rdf (deflated 50%)
> >>  adding: chrome/en-US.jar (deflated 75%)
> >>  adding: chrome.manifest (deflated 78%)
> >> gmake[4]: Leaving directory
> >> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/locales'
> >> gmake[3]: Leaving directory
> >> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/installer'
> >> gmake tools
> >> gmake[3]: Entering directory
> >> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/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/browser/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/browser/installer'
> >> gmake[1]: Leaving directory
> >> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2'
> >> OBJDIR=obj-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-freebsd8.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 manager:
> >> None of the authentication protocols specified are supported.
> >> **
> >> GLib-GIO:ERROR:gdbusconnection.c:2270:initable_init: assertion failed:
> >> (connection->initialization_error == 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]#
> >> ====
> >>
> >> Make start, System print-out under message
> >> To build Firefox with PGO support you need a running X server and
> >>   build this port with an user who could access the X server!
> >>
> >> During the build a Firefox instance will start and run some test.
> >>      Do 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  need, even Google.....
> >>
> >> If I help to debug, Please tell me.
> >> Thanks your hard work, Let us good firefox :D
> >>
> >
> Thanks  Daniel 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 && \
>   /usr/local/bin/zip -r9D
> /usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/locales/../../dist/install/firefox-4.0.1.en-US.langpack.xpi
> install.rdf chrome chrome.manifest -x chrome/en-US.manifest
>   adding: install.rdf (deflated 50%)
>   adding: chrome/en-US.jar (deflated 75%)
>   adding: chrome.manifest (deflated 78%)
> gmake[4]: Leaving directory
> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/locales'
> gmake[3]: Leaving directory
> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/installer'
> gmake tools
> gmake[3]: Entering directory
> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2/browser/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/browser/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/browser/installer'
> gmake[1]: Leaving directory
> `/usr/ports/www/firefox/work/mozilla-2.0/obj-amd64-unknown-freebsd8.2'
> OBJDIR=obj-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-freebsd8.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: 34583
> **
> GLib-GIO:ERROR:gdbusconnection.c:2270:initable_init: assertion failed:
> (connection->initialization_error == NULL)
> TEST-UNEXPECTED-FAIL | automation.py | Exited with code -6 during test run
> 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=portupgrade
> UPGRADE_PORT=firefox-4.0.1,1 UPGRADE_PORT_VER=4.0.1,1 make
> ** Fix the problem and try again.
> ** Listing the failed packages (-:ignored / *:skipped / !:failed)
> 	! www/firefox (firefox-4.0.1,1)	(missing header)
> =====================
> 

    to use portupgrade i used the -B option to build as USER, the
    following worked for me:)

    login as USER to you X session

    $ xhost +
    $ su
    # export WRKDIRPREFIX=/home/USER
    # portupgrade -B 'su -m USER -c make' firefox-XXXXX


    the xhost + was required, it failed without.



More information about the freebsd-ports mailing list