# Problem building the latest firefox



## sk8harddiefast (Nov 2, 2013)

During compile I get this error

```
gmake -C testshell tools
gmake[6]: Entering directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc/testshell'
gmake[6]: Nothing to be done for `tools'.
gmake[6]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc/testshell'
gmake -C app libs
gmake[6]: Entering directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc/app'
/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/_virtualenv/bin/python /usr/ports/www/firefox/work/mozilla-release/config/expandlibs_exec.py --depend .deps/.//plugin-container.pp --target plugin-container --uselist --  g++46 -o plugin-container -isystem/usr/local/include  -I/usr/local/include -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -O2 -pipe -O3 -B/usr/local/bin -Wl,-rpath=/usr/local/lib/gcc46 -fno-strict-aliasing -Wl,-rpath=/usr/local/lib/gcc46 -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -std=gnu++0x -pipe  -DNDEBUG -DTRIMMED -fprofile-generate -O2 -O3 -fomit-frame-pointer MozillaRuntimeMain.i_o   -pthread  -L/usr/local/lib -Wl,-z,origin -Wl,-rpath,\$ORIGIN -B/usr/local/bin -Wl,-rpath=/usr/local/lib/gcc46 -Wl,-z,noexecstack -Wl,-z,text -Wl,--build-id  -fprofile-generate -Wl,-rpath-link,/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/dist/bin -Wl,-rpath-link,/usr/ports/www/firefox/work/fake/lib    -L../../dist/bin -L../../dist/lib  -L/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/dist/bin -lxul -lmozalloc  -liconv -L/usr/local/lib -lplds4 -lplc4 -lnspr4 -pthread  -Wl,--whole-archive /usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/dist/lib/libmozglue.a /usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/dist/lib/libmemory.a -Wl,--no-whole-archive -rdynamic  -lkvm    
Executing: g++46 -o plugin-container -isystem/usr/local/include -I/usr/local/include -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wcast-align -O2 -pipe -O3 -B/usr/local/bin -Wl,-rpath=/usr/local/lib/gcc46 -fno-strict-aliasing -Wl,-rpath=/usr/local/lib/gcc46 -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -std=gnu++0x -pipe -DNDEBUG -DTRIMMED -fprofile-generate -O2 -O3 -fomit-frame-pointer /usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc/app/tmpligHRq.list -pthread -L/usr/local/lib -Wl,-z,origin -Wl,-rpath,$ORIGIN -B/usr/local/bin -Wl,-rpath=/usr/local/lib/gcc46 -Wl,-z,noexecstack -Wl,-z,text -Wl,--build-id -fprofile-generate -Wl,-rpath-link,/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/dist/bin -Wl,-rpath-link,/usr/ports/www/firefox/work/fake/lib -L../../dist/bin -L../../dist/lib -L/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/dist/bin -lxul -lmozalloc -liconv -L/usr/local/lib -lplds4 -lplc4 -lnspr4 -pthread -Wl,--whole-archive ../../dist/lib/libmozglue.a ../../dist/lib/libmemory.a -Wl,--no-whole-archive -rdynamic -lkvm
/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc/app/tmpligHRq.list:
    INPUT("MozillaRuntimeMain.i_o")

/usr/local/bin/ld: Warning: alignment 8 of symbol `je_malloc_conf' in ../../dist/lib/libmemory.a(jemalloc_config.i_o) is smaller than 16 in ../../dist/lib/libmemory.a(jemalloc.i_o)
/usr/local/bin/ld: plugin-container: hidden symbol `__gcov_init' in /usr/local/lib/gcc46/gcc/x86_64-portbld-freebsd9.2/4.6.3/libgcov.a(_gcov.o) is referenced by DSO
/usr/local/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
gmake[6]: *** [plugin-container] Error 1
gmake[6]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc/app'
gmake[5]: *** [tools] Error 2
gmake[5]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/ipc'
gmake[4]: *** [tools_tier_platform] Error 2
gmake[4]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2'
gmake[3]: *** [tier_platform] Error 2
gmake[3]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2'
gmake[2]: *** [default] Error 2
gmake[2]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2'
gmake[1]: *** [realbuild] Error 2
gmake[1]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2'
gmake: *** [profiledbuild] Error 2
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** [do-build] Error code 1

Stop in /usr/ports/www/firefox.
*** [install] Error code 1

Stop in /usr/ports/www/firefox.
```

Î‘nd my system

```
FreeBSD Unix 9.2-RELEASE FreeBSD 9.2-RELEASE #3 r256061: Sat Oct  5 10:34:07 EEST 2013     root@Unix:/usr/obj/usr/src/sys/GENERIC  amd64
```

Any help to find out how to update it?


----------



## trh411 (Nov 2, 2013)

Based on your post, I just tried building www/firefox (25.0_1,1) on my FreeBSD-9.2-RELEASE #0 r255898 system. Unfortunately, I was not able to duplicate your error, as my build completed successfully.

Do you have anything funky in /etc/make.conf that would alter the normal build behavior?


----------



## sk8harddiefast (Nov 2, 2013)

No. My /etc/make.conf file


```
#CC=clang
#CXX=clang++
#CPP=clang-cpp
WITH_CUPS=YES
CUPS_OVERWRITE_BASE=YES
WITHOUT_DOCS=YES
```

and my Firefox flags


```
===> The following configuration options are available for firefox-25.0_1,1:
     DBUS=on: D-Bus IPC system support
     DEBUG=off: Install debug symbols
     GCONF=off: GConf configuration backend support
     GIO=on: GIO for file I/O
     GNOMEUI=off: libgnomeui support module
     GNOMEVFS2=on: GnomeVFS2 (virtual file system) support
     GSTREAMER=on: Multimedia support via GStreamer
     LIBPROXY=on: Proxy support via libproxy
     LOGGING=on: Additional log messages
     OPTIMIZED_CFLAGS=on: Use extra compiler optimizations
     PGO=on: Use Profile-Guided Optimization
     PROFILE=off: Build with profiling support
     TEST=off: Build and/or run tests
====> Options available for the single AUDIO: you have to select exactly one of them
     ALSA=off: ALSA audio architecture support
     PULSEAUDIO=on: PulseAudio sound server support
===> Use 'make config' to modify these settings
```


----------



## sk8harddiefast (Nov 3, 2013)

ÎŸk. I made everything. I build and install world, I build and install kernel, I rebuild all firefox dependencies. And I tried to build firefox and I get the same error. My system is up to date, my ports too. I also run `make clean` before recompile firefox. I think that I made all the steps I should do to make it work. I cannot understand why just don't want to be built


----------



## cpm@ (Nov 3, 2013)

Did you try to build with OPTIMIZED_CFLAGS option disabled? Also uncheck the PGO option (it's disabled by default).


----------



## sk8harddiefast (Nov 3, 2013)

Yes. I tried without this options and the option to disable dbus too. I always get the same option


----------



## cpm@ (Nov 3, 2013)

Seems that this error happens to amd64 processors using GCC as compiler. The symbol alignment warning from ld(1)() need be corrected. So, you should file a PR on the freebsd-gecko mailing list.

Recently, @flo@ has added GCC support due a bug in Clang on 9.x/i386, I suggest you try to compile it using Clang instead.


----------



## rtwingfield (Nov 3, 2013)

rtwingfield said:
			
		

> I have successfully built and installed FireFox-25.0,1.  Interesting to note that `make build` _needed_, i.e., ===>   firefox-25.0,1 depends on executable: gcc46 - not found and installed
> 
> ```
> gcc-4.6.3_1                    GNU Compiler Collection 4.6
> ...



Be advised that I had problems with FireFox-24.0,1 attempting to compile with the clang compiler.  FireFox-25.0,1 actually needed the gcc compiler regarding building on I/386 dual Pentium III processors.

Also, my /etc/make.conf contains the following overrides:
(Note:  I have pkgng installed.)

```
# file created by Ron Wingfield.
WITH_PKGNG= yes # see Handbook, chapter 5.5.1
MAKE_JOBS_UNSAFE=yes
```


----------



## sk8harddiefast (Nov 3, 2013)

ÎŸk. Î™ am going to try it right now 
I will post the progress
------------------------------------------

Ok. Is not compiling with clang.
I get this error

```
/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/security/manager/ssl/tests/unit/test_ocsp_stapling/tmpCvIs_m.list:
    INPUT("OCSPStaplingServer.o")

/usr/local/bin/ld: Warning: alignment 8 of symbol `je_malloc_conf' in ../../../../../../dist/lib/libmemory.a(jemalloc_config.o) is smaller than 16 in ../../../../../../dist/lib/libmemory.a(jemalloc.o)
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_interval_profiler'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_init'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_one_value_profiler'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_ior_profiler'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_merge_single'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_merge_add'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_indirect_call_profiler'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_average_profiler'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_merge_ior'
../../../../../../dist/bin/libsmime3.so: undefined reference to `__gcov_pow2_profiler'
collect2: ld returned 1 exit status
gmake[7]: *** [OCSPStaplingServer] Error 1
gmake[7]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/security/manager/ssl/tests/unit/test_ocsp_stapling'
gmake[6]: *** [libs] Error 2
gmake[6]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/security/manager/ssl/tests/unit'
gmake[5]: *** [libs] Error 2
gmake[5]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/security/manager/ssl/tests'
gmake[4]: *** [libs] Error 2
gmake[4]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/security/manager/ssl'
gmake[3]: *** [libs] Error 2
gmake[3]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2/security/manager'
gmake[2]: *** [libs_tier_platform] Error 2
gmake[2]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2'
gmake[1]: *** [tier_platform] Error 2
gmake[1]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release/obj-x86_64-unknown-freebsd9.2'
gmake: *** [default] Error 2
*** [do-build] Error code 1

Stop in /usr/ports/www/firefox.
*** [install] Error code 1
```

I sent a PR now to maintainer


----------

