Building Mozilla Thunderbird and Mozilla Firebird on Windows
Thursday July 17th, 2003
Henrik Gemal writes: "I'm a Mozilla fan! And being able to build Mozilla Thunderbird and/or Mozilla Firebird on my Windows XP machine sounded cool. I didn't have Microsoft Visual C++ so I needed to build without any tools from Microsoft, aside from Windows XP of couse.
"So here we go: Build Mozilla Thunderbird and/or Mozilla Firebird in 14 easy steps!"
That's a great instruction!
#2 Now I can make the leap!
by IsoSchi <email@example.com>
Thursday July 17th, 2003 7:22 AM
Thanks for that Henrik. I've been wanting to make the leap to start building mozilla myself, but without Visual C++, I wasn't sure where to start and was a bit scared to just go for it myself.
With these instructions, I can finally start hacking at the code myself! Thanks a lot!
Yes this is very good idea. But I do not like Cygwin. Has anyone good experience with compiling Firebird or Mozilla with Mingw <http://www.mingw.org/> ?
#4 Re: Cygwin is good byt Mingw is better
Thursday July 17th, 2003 7:50 AM
er... the instructions posted do use the Mingw compiler.
Cygwin is needed for various other bits - Cygwin is also used for compiling with Mozilla's primary compiler, MSVC++.
Getting it to work without cygwin would be quite a challenge. I'm not sure Mingw comes with stuff like Perl and CVS, which are needed by the Mozilla build scripts.
#5 Re: Re: Cygwin is good byt Mingw is better
Thursday July 17th, 2003 8:14 AM
Mingw has different philosophy than Cygwin and I like it much better. It is better incorporated to the system as ordinary application. And because perl, cvs, python etc. has also windows version (which are working without Cygwin), there is no problem use them with mingw. But probably there will be neccessary some new #ifdef #endif statements in the source code, like in any multiplatform application which can be compiled with cygwin, mingw and also VC++.
#7 Re: Re: Cygwin is good byt Mingw is better
Thursday July 17th, 2003 8:43 AM
Mozilla moved away from having #ifdefs and alternative files in favour of having a single build process which works on Linux, Mac OS X, other types of *nix and Windows. If you introduce #ifdefs, it means that multiple changes are necessary when the build files are updated.
However, if somebody wanted to create an alternative set of build files which used Mingw and alternative CVS, Perl, etc, tools, I'm sure that could be done. As I said, it would probably prove to be something of a challenge...
Thank God someone finally did this! Anybody know if we can expect to see primary support for GCC/Cygwin/Mingw in the future and get Microsofts name off our web page?
Well, making mozilla win32 build be built with gcc was in the Bugzilla bug report for a long time, it goes way back to around 10,000 or 13,000, something around that. Then the bug report was closed a couple of months ago since there was a need to buried a lengthly bug report since GCC/Mwing start working. Then a couple of new bug report was filed related to this along the way. It have been a work in progress but it's ready for anyone to build it or hack into it.
Probably never, since VC++ generates better and faster code. It's definitely good that you can compile with a free compiler, since that opens development up to everyone, but official builds will continue to be made with the Microsoft compiler.
To summarize, I'll need nearly 4GB of spare HDD space, spend 2 hours downloading the source, and 4 hours building it? Forget it! I think I'll just stick with downloading binaries, and leave the building work to others . . . !
I don't know why they don't have a CVS checkout that will skip the Seamonkey stuff that you don't need.
Why is it that most software that originated (or is built concurently) on *Nix, requires Cygwin or Mingw to build on Windows with gcc?
This is not a flame, I am just curious.
#11 Re: Compiling without Cygwin
by johnlar <firstname.lastname@example.org>
Thursday July 17th, 2003 11:53 AM
Cygwin basically provides the ability to run unix style command prompt under windows, as gcc doesn't work with windows command prompt (dos) and doesn't have a windows version basically.
IIRC, software needs cygwin to build when it's using unix style api's as cygwin comes with a dll that provides a unix api on top of windows, whereas mingw provides a set of compilers and header files for createing 'real' windows apps - ie apps that are using the native windows api as oppossed to the unix api.
#12 you should use --enable-optimize for firebird
by willll <email@example.com>
Thursday July 17th, 2003 2:03 PM
or else it is liable to crash
Finally!! We can all compile Mozilla. :)
I always thought it sucked that you needed a Microsoft product to compile a open source program.
So this is wonderful news! Thank you so much for this...
With that... I'm off to go compile a big lizard! :)
I'm at step 12 without a hitch! (Now just need to pull the source and build it) Awesome step-by-step introduction. Thanks a ton.
CVS checkout was less than 30min. for me. Did encounter the 'midl' build failure, Gemal already has an answer for that on the build instruction page.
#18 compile to cygwin's x11 version
Thursday July 17th, 2003 11:21 PM
How easy would Firebird be to compile to run inside Cygwin's X11 server, as opposed to as a Windows app?
current CVS is somewhat broken, but the nice folks on forums have found a workaround.
<http://forums.mozillazine…org/viewtopic.php?t=16105> # configure # make export in * mozilla/toolkit * mozilla/browser * mozilla/xpinstall # make
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5a) Gecko/20030717 Mozilla Firebird/0.6
These instructions work for Mozilla itself! Just get rid of the MOZ_THUNDERBIRD stuff. And I recommend you remove the --enable-necko-protocols line, as it leaves you without about:mozilla!
Finally after hours of trying to get it to build, there's coding errors. What a lovely waste of time!
Can someone give me some advice. I'm a bit of a newbie to this building stuff. I'm following build instructions for mozilla Thunderbird, but it just doesn't work.
i get to the bit where it says ---> to run - type:
cd c:\mozilla\mozilla\thunderbird\bin\ thunderbird.exe -console
this directory does not exist. there is no thunderbird folder. I guess that means me make has not completed. but it appears to finish without errors....