MinGW builds

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

MinGW builds

bes.wll (Bugzilla)
I need some advice about MinGW Firefox trunk builds. I am using the very
   latest versions of MinGW: gcc-core 3.4.5, gcc g++ 3.4.5, binutils
2.16.91, mingw-runtime 3.9, w32api 3.7.

I see the following 2 problems:

1. Build using the newer moztools(static) fails after a short time. See
below end part of log:
    >
d:/mozilla/moztools1/lib/libidl-0.6_s.lib(parser.obj):parser.c:(.text+0x3f90):
undefined reference to `_allshl'

> fu000001.o: undefined reference to `libmsvcrt_a_iname'
> fu000002.o: undefined reference to `libmsvcrt_a_iname'
> fu000003.o: undefined reference to `libmsvcrt_a_iname'
> fu000004.o: undefined reference to `libmsvcrt_a_iname'
> fu000005.o: undefined reference to `libmsvcrt_a_iname'
> fu000006.o: more undefined references to `libmsvcrt_a_iname' follow
> nmth000000.o: undefined reference to `_nm___pctype'
> nmth000019.o: undefined reference to `_nm____mb_cur_max'
> nmth000038.o: undefined reference to `_nm___iob'
> collect2: ld returned 1 exit status
> make[7]: *** [xpidl.exe] Error 1
> make[7]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw/xpcom/typelib/xpidl'
> make[6]: *** [export] Error 2
> make[6]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw/xpcom/typelib/xpidl'
> make[5]: *** [export] Error 2
> make[5]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw/xpcom/typelib'
> make[4]: *** [export] Error 2
> make[4]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw/xpcom'
> make[3]: *** [export_tier_2] Error 2
> make[3]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw'
> make[2]: *** [tier_2] Error 2
> make[2]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw'
> make[1]: *** [alldep] Error 2
> make[1]: Leaving directory `/cygdrive/d/mozilla/mozilla/object-mingw'
> make: *** [alldep] Error 2

2. Using the old moztools, however, seems good: The build is successful,
and indeed a firefox.exe is created in ..dist/bin.
But trying to run that, firefox crashes after a couple of seconds

I have tried numerous .mozconfig settings, but still crashing at
start-up. I have tried to make a static build, but with the same crash
result, also with and without cairo etc.
My last .mozconfig looked like this:

> . $topsrcdir/browser/config/mozconfig
> #mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/object
> # Alternatives for MinGW
> mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/object-mingw
> CC=gcc
> CXX=g++
> CPP=cpp
> AS=as
> LD=ld
> #LDFLAGS="-mwindows -Wl,--enable-runtime-pseudo-reloc"
> # end mingw options
> ac_add_options --enable-optimize=-O2
> ac_add_options --enable-crypto
> ac_add_options --disable-tests
> ac_add_options --disable-debug
> ac_add_options --disable-accessibility
> ac_add_options --disable-activex
> ac_add_options --disable-activex-scripting
> ac_add_options --disable-xpconnect-idispatch
> #ac_add_options --enable-static
> #ac_add_options --disable-shared
> #ac_add_options --disable-places
> #ac_add_options --enable-svg
> #ac_add_options --enable-canvas
> ac_add_options --enable-default-toolkit=windows
> #ac_add_options --enable-default-toolkit=cairo-windows
> #ac_add_options --disable-canvas
> #ac_add_options --disable-svg  
> ac_add_options --disable-OJI #was added as proposal from chatzilla

Any advice, thoughts etc would be appreciated

BE







_______________________________________________
dev-builds mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-builds
Reply | Threaded
Open this post in threaded view
|

Re: MinGW builds

Chris Seawood
Bengt-Erik Söderström wrote:

> 2. Using the old moztools, however, seems good: The build is successful,
> and indeed a firefox.exe is created in ..dist/bin.
> But trying to run that, firefox crashes after a couple of seconds

>> ac_add_options --enable-optimize=-O2

I haven't been able to do a -O2 mingw build for probably well over a
year now.  I haven't had time to track down what's getting mis-optimized.

- cls
_______________________________________________
dev-builds mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-builds
Reply | Threaded
Open this post in threaded view
|

Re: MinGW builds

bes.wll (Bugzilla)
Christopher Seawood wrote:

> Bengt-Erik Söderström wrote:
>
>> 2. Using the old moztools, however, seems good: The build is successful,
>> and indeed a firefox.exe is created in ..dist/bin.
>> But trying to run that, firefox crashes after a couple of seconds
>
>>> ac_add_options --enable-optimize=-O2
>
> I haven't been able to do a -O2 mingw build for probably well over a
> year now.  I haven't had time to track down what's getting mis-optimized.
>
> - cls
So, I make a new try without optimize...we will know in about 2 hours...
BE
_______________________________________________
dev-builds mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-builds
Reply | Threaded
Open this post in threaded view
|

Re: MinGW builds

bes.wll (Bugzilla)
Bengt-Erik Söderström wrote:

> Christopher Seawood wrote:
>> Bengt-Erik Söderström wrote:
>>
>>> 2. Using the old moztools, however, seems good: The build is successful,
>>> and indeed a firefox.exe is created in ..dist/bin.
>>> But trying to run that, firefox crashes after a couple of seconds
>>
>>>> ac_add_options --enable-optimize=-O2
>>
>> I haven't been able to do a -O2 mingw build for probably well over a
>> year now.  I haven't had time to track down what's getting mis-optimized.
>>
>> - cls
> So, I make a new try without optimize...we will know in about 2 hours...
> BE

After about 2 hours: success!

For others who like to experiment with Mingw, these are the build
configs confirmed working:

> Build tools
> Compiler Version Compiler flags
> $(CYGWIN_WRAPPER) gcc -mno-cygwin gcc version 3.4.5 (mingw special)
> -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Wno-long-long -pedantic
> -mms-bitfields -pipe
>
> $(CYGWIN_WRAPPER) g++ -mno-cygwin   gcc version 3.4.5 (mingw special)  
> -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align
> -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor
> -Wno-long-long -pedantic -mms-bitfields -pipe
>
> Configure arguments
> --enable-application=browser --enable-crypto --disable-tests --disable-debug
> --disable-accessibility --disable-activex --disable-activex-scripting
> --disable-xpconnect-idispatch --enable-static --disable-shared --enable-svg
> --enable-canvas --enable-default-toolkit=cairo-windows

As this is a static build, note that a lot of memory is used in the
final steps of the build, be prepared to have enough swap space available.
The final firefox.exe is with this config: 25.3 MB.

BE


_______________________________________________
dev-builds mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-builds
Reply | Threaded
Open this post in threaded view
|

Re: MinGW builds

Chris Seawood
In reply to this post by bes.wll (Bugzilla)
Bengt-Erik Söderström wrote:

> Christopher Seawood wrote:
>> Bengt-Erik Söderström wrote:
>>
>>> 2. Using the old moztools, however, seems good: The build is successful,
>>> and indeed a firefox.exe is created in ..dist/bin.
>>> But trying to run that, firefox crashes after a couple of seconds
>>
>>>> ac_add_options --enable-optimize=-O2
>>
>> I haven't been able to do a -O2 mingw build for probably well over a
>> year now.  I haven't had time to track down what's getting mis-optimized.
>>
>> - cls
> So, I make a new try without optimize...we will know in about 2 hours...
> BE

--enable-optimize (defaults to -O for win32) works fine.  It's the -O2
or higher which causes problems in the mingw build.

- cls
_______________________________________________
dev-builds mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-builds